Linux_commands
Linux 常见命令:基本文件和目录操作、文件的创建和查阅、搜索命令、磁盘的压缩和解压缩、系统信息、进程管理、用户权限与用户管理、网络传输、安装卸载、开关机、窗口管理等。
1. 基本文件与目录操作
ls # 列出文件 [-a] 列出全部文件(包括隐藏文件) [-l] 列出长数据串,包含属性与权限等信息
# 查看当前文件下的目录个数 find ./ | wc -l
cd dir # 切换到指定目录
cd .. # 切换到上一级目录
cd ~ # 切换到自己的主文件夹
cd - # 切换到刚才目录
pwd # 显示当前目录
mkdir [dirname] # 创建新文件夹
rm [file] # 删除文件或者目录 [-r] 删除目录 [-f] 强制
cp [srcfile] [dstfile] # 复制文件 [-r] 用于复制目录
mv [srcfile] [dstfile] # 将文件移动到指定目录,不使用 [-r] 即可移动目录,同一目录则为重命名
tree . # 显示目录树 -L 指定显示最大层数 sudo apt-get install tree
2. 文件创建与查阅
touch filename # 创建新文件
cat file # 正向查看文件全部内容
tac file # 反向查看文件全部内容 [-n] 带行号显示文件
head -n file # 查看文件前n行
tail -n file # 查看file的后n行
less file # 按页查看文件
[Page Down] 下翻一页 [Page Up] 上翻一页 / 向下查询 ? 向上查询 q 退出
more file # 按页查看文件
[Enter] 向下一行 [Space]向下一页 q退出 /查询 :f 显示文件名和当前行数
3. 搜索命令
locate [filename] # 系统全局范围内定位文件, 从/var.lib/mlocate数据库中查找文件,
# 但是该数据库每天更新一次,所以可以首先使用sudo updatedb更新一下数据库,
# 才能查询最近的文件
whereis [commands] 搜索命令位置(命令+帮助文档)
which 搜索命令位置(命令+别名)
find [search_file] [search_condition] 搜索文件,应该避免大范围搜索
# 结合通配符使用: * 任意内容 ? 任意一个字符 [] 任意一个[]内的内容
grep [search_string] [search_file] -v 反向搜索 -i 忽略大小写
4. 磁盘与压缩/解压缩命令 [F]
(1) 查看磁盘空间
du -h --max-depth=1 # 显示当前目录磁盘占用, --max-depth=1 显示级别
df -h # 检查linux服务器的文件系统的磁盘空间占用情况
# -h 以人们较易读的容量格式 (G/M) 显示
(2) 压缩与解压缩
# .zip
zip 压缩文件名.zip 源文件 # 压缩 zip 文件 [-r] 压缩目录
unzip 压缩文件.zip # 解压
# .tar.gz
tar -zcvf file.tar.gz 源目录 压缩 [-c] 打包 [-v] 显示过程 [-f] 指定打包后的文件名
tar -zxvf file.tar.gz 解压
# .tar.bz2
tar -jcvf file.tar.gz 源目录 压缩 [-c] 打包 [-v] 显示过程 [-f] 指定打包后的文件名
tar -jxcf file.tar.gz 解压
5. 系统信息
时间
date # 显示当前时间和日期
cal # 显示当月日历
uptime # 显示系统开机时间
系统
lsb_release [-a] # 查看linux 版本
uname [-a] # 查看内核版本
last # 查看登录信息
whoami # 查看当前用户名
lsof # 列出进程调用或者打开的文件信息
vmstat [刷新延时 刷新次数] # 查看系统资源
w # 查看用户登录信息
硬件
cat /proc/cpuinfo # 查看CPU 信息
cat /proc/meminfo # 查看内存信息
df # 显示磁盘占用情况 [-h] 按照人们常见的 KB,MB,GB 格式显示
du # 显示目录空间占用情况 [-h] 按照人们常见的 KB,MB,GB 格式显示 [--max-depth] 指定显示目录深度
nvidia-smi # 显示nvidia 显卡的运行情况
6. 进程管理
ps # 显示当前活动进程 [aux] 以BSD系统格式显示 [-ef] 以linux标准格式显示
top # 显示正在运行的进程
kill pid # 杀死进程id [-9] 强制杀死
killall [进程名] # 按照进程名杀死进程
pkill [进程名] # 按照进程名杀死进程
kill %[job num] # 按照工作号杀死进程
bg # 列出已停止或者后台的进程
fg # 将最近的作业带到前台
fg n # 将作业n带到前台
[command] & # 把命令放入后台,并在后台执行
jobs # 显示后台进程
[command];[Enter];[ctrl] + z # 把命令放在后台,并暂停
7. 文件权限与用户管理 [F]
(1) 更改文件权限 :
chmod [u|g|o][+|-|=][r|w|x] file|dir
chmod octal file|dir
# u 用户 g 所属群组 o 其他 r=read(4) w=write(2) x=execute(1)
(2) 用户和用户组管理
# user
useradd -m username # 新建用户 [-m] 建立用户家目录
passwd username # 为新建用户设置密码
su [username] # 切换用户, 缺省则为 root 用户
userdel -r username # 删除用户 [-r] 删除用户家目录
more /etc/passwd # 查看所用用户及其权限
# groups
groups # 查看用户所属于的组
usermod -G groupNmame username # 将用户加入到组
usermod -g groupName username # 变更用户所属的根组
more /etc/group # 查看所有用户组及其权限
chown username dirOrFile # 更改文件的拥有者 -R 文件夹
(3) 环境变量
# bashrc与profile都用于保存用户的环境信息
# profile只能在登入的时候执行一次;
# bashrc 在每次执行 source 时都会使用它一次
source ~/.bashrc
8. 网络传输 [F]
netstat # 查看网络状态 -t TCP 端口 -u UDP 协议端口 -l 在监听状态 -a 所有端口
lsof -i:[Port] # 列出端口占用情况
ipconfig # 查看与配置网络状态
route -n # 查看路由状态
traceroute IP # 探测前往IP的路由路径
ssh [-P port] user@hostname # 以user用户身份连接到 hostname, 端口为 port
wget file # 下载file -c 表示断点续传 -o 指定日志文件
scp -r src/path dst/path # 下载和上传文件或目录 -P 端口
host domain # domain -> IP
host IP # IP -> domain
ping host # 探测指定IP或者域名的网络状况 -c 指定次数
9. 安装卸载
源代码安装
./configure # 软件配置和检查
make # 编译
make install # 安装
二进制包安装 : apt-get (ubuntu - deb package)
apt-get install [package_name] 使用 apt-get安装包
apt-get remove [package_name] 使用 apt-get卸载包
秘钥生成
ssh-keygen -f key_name -C "description"
11. 常见的开关机命令
关机命令
shutdown -h now # 关机(保存当前正在运行的程序,相对安全)✨
# 其它:
halt
poweroff
init 0
重启命令
shutdown -h now # 重启 (保存当前正在运行的程序,相对安全) ✨
reboot
init 6
退出登录:
logout # 建议每次离开服务器的时候退出登录 ✨
12. 窗口管理命令
标签管理
[Ctrl] + [Shift] + T # 新建一个ternimal 标签
[Ctrl] + [Shift] + W # 关闭 terminal 标签
Ctrl + PD / Ctrl + PU # 切换 terminal 标签页
Alt+n # 切换到标签页n
窗口管理
Ctrl + Shift + N # 新建terminal窗口
Ctrl + shift + Q # 关闭 terminal 窗口
Alt + Tab # 在窗口之间切换
F11 # 窗口全屏(exit 退出)
13. 其它
(1) 常见的热键
[Ctrl] + c # 停止当前命令
[Ctrl] + d # 注销当前会话
[Ctrl]+z # 结束交互
[↑] # 重复上一条命令
[Tab] # 命令补齐/文件补齐
(2) 帮助命令:
man [cmd] # 查询命令command的说明文档 [n] 指定分类 -k 关键字
[command] --help
info [cmd]
whatis [cmd] # 简要说明命令的作用
which [cmd] # 查看程序的binary文件所在路径
whereis [cmd] # 查看程序的搜索路径
sudo ldconfig
source
history # 查看历史记录
其他
# 重定向
> # 标准输出重定向(覆盖)
2> # 标准错误输出重定向(覆盖)
>> # 标准输出重定向(追加)
2>> # 标准错误输出重定向(追加)
[command] >> [file1] 2>> [file2] # 将正确输出追加到file1,错误输出追加到file2
# 多命令顺序执行:
; # 无关联顺序执行 ; 与 && 或 ||
&& # 与
|| # 或
| # 将命令1的正确输出作为命令2 的输入
通用的参数
-a # 所有 all
-l # 长格式 long
-r # 递归 recursive
-h # 人类可读 human
-t # 类型 type
参考资料:
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!