Linux回顾【1】基础命令的常用选项

和文件与目录有关的命令

ls

  • -F 区分文件和目录
  • -a 显示隐藏文件
  • -R 递归显示子目录及其内容
  • -l 详细信息,其中开头(d) 表示目录 (-) 表示文件
  • -i 查看inode编号
  • 直接加名字或者正则就可以过滤输出,比如 ls -l a[bs]c, ls -l a*c, ls -l abc?
  • --time==atime 显示文件访问时间而非默认的修改时间。

touch

  • 对已创建的文件touch, 可以更新其修改时间,不改变文件内容。
  • -a 更新已存在文件的访问时间。

cp

  • -i 如果目标文件已存在,shell会询问是否想把它覆盖。
  • 在复制到目标文件夹时,记住在目录名尾部加上斜线/
  • -R 递归复制整个目录

ln

  • ln -s file sl_file 创建符号链接(软链接),相当于源文件的指针,符号链接和原文件是两个完全不同的文件。
  • ln file hl_file 创建硬链接,相当于源文件的引用,他们本质上是同一个文件
  • 链接不要套娃,混乱的链接链会有很多问题。

mv

  • 重命名文件/剪切文件/剪切并重命名文件
  • -i 与cp相同

mkdir

  • -p 创建多级目录

file

  • 可以显示文件/文件夹类型,及其字符编码。
  • 可以显示二进制可执行程序编译的目标平台。

cat

  • -n 显示行号。
  • -b 只为有文本的行显示行号。
  • -T^I 替换文件中所有的制表符(tab)。

    more

    • 比cat更适合输出大文件的命令,分页显示。
    • 操作与man命令一样。

    less

    • 更高级的more命令,比如支持上下翻页键和搜索。

    tail

    • 默认显示文件末尾10行,常用于日志文件
    • -n 指定显示的行数,比如 tail -n 30 abc.file
    • -f 实时显示文件最新内容,比如有一个进程正在不断写入此文件,该选项确保动态显示最新的几行。
    • 默认显示文件开头10行。
    • 直接指定想要的行数:head -5 abc.file.

sort

  • 以会话默认的规则对文本文件中的数据排序
  • -n 把数字识别为数字而非字符并按数值排序。
  • -M 识别三字符的月份名称,并按12个月升序排序,常用于Linux日志文件。
  • -t 指定字段分隔符;-k 指定从第几个字段开始,第几个字段结束。
  • -r 反向排序(升序变降序)。

grep

  • grep pattern file 输出包含指定模式的行。
  • -v 反向搜索,输出不包含指定模式的行。
  • -n 显示匹配到的行所在行号。
  • -c 输出匹配到的行的总数。
  • -e pattern 可以指定多个模式。
  • grep 默认使用unix正则表达式,egrep 使用POSIX扩展正则表达式。 还有fgrep, rgrep, bzgrep.....

gzip

  • gzip file 把文件压缩为 file.gz
  • 支持通配符

tar

  • -cvf abc.tar dir1/ dir2/ 创建一个归档文件,其包含 dir1 和 dir2 目录的内容。
  • -tf abc.tar 列出归档文件的内容,但不会提取文件。
  • -xvf abc.tar 提取归档文件的内容。
  • -c 表示创建新的归档文件;-f表示输出结果到文件或设备 abc.tar;-t列出tar文件的内容;-v 在处理文件时显示文件;-x 提取。
  • .tgz 文件是gzip压缩过的tar文件,使用 -zxvf解压并提取,-z 表示将输出重定向给gzip命令。

和进程与磁盘相关的命令

ps

  • 默认只显示当前控制台下,属于当前用户的进程;默认显示PID、终端设备(TTY)和已用的CPU时间。
  • -ef 显示系统所有进程;-e 表示显示所有进程,-f表示输出完整格式, -F 可以输出比-f更完整的格式。
  • -f 显示的列有:启动进程的用户(UID)、PID、父进程PPID、CPU利用率(C)、进程启动时的系统时间(STIME)、终端设备(TTY)、累计CPU时间(TIME)、启动的程序名称(CMD)。

top

  • 相比于ps显示某一时刻的进程信息,top可以实时显示进程。
  • load avg之后的三个数字分别表示:最近1分钟、最近5分钟、最近15分钟的平均负载。
  • 打 f 选择输出排序的字段;打 d 修改轮询间隔; 打 q 退出。

kill

  • 默认向指定的PID发送TERM信号。TERM信号(15)表示尽可能终止,KILL信号(9)表示无条件终止,但kill命令默认并不是发送KILL信号。
  • 没有输出。
  • -s 指定其他信号,比如 kill -s HUP 1234.

killall

  • killall 允许使用进程名以及通配符来结束进程。

mount

  • 默认输出系统挂载的所有设备。
  • 手动挂载设备:mount -t type device directory-t 配合磁盘文件系统类型一起使用,如mount -t ntfs /dev/sdb1 /media/mydisk.

umount

  • 注意这个命令没有字母 n
  • umount [directory | device] 通过设备文件或者挂载点卸载设备。

    lsof

    • 获取正在使用这个设备的进程信息

df

  • 查看所有已挂载磁盘的使用情况。
  • -h 以更易读的格式输出。

du

  • 显示特定目录(默认当前)的使用情况;可以快速判断超大文件的存在;默认显示目录下所有目录、子目录的磁盘使用情况。
  • du * 显示当前目录下所有文件大小,并递归显示所有子文件夹的大小(不含子文件夹下的文件).
  • -h 以更易读的格式输出。
  • -s 只显示当前目录级别的文件和目录大小,非递归,相当于-d 0 ,默认为-a
  • du -sh * | sort -nr 降序输出当前目录下所有文件和目录的大小。
posted @ 2022-03-26 23:50  略略略——  阅读(76)  评论(0编辑  收藏  举报