更多的bash shell命令(shell02)

20 篇文章 1 订阅

更多的bash shell命令

探查进程ps

ps -ef

-e参数指定显示所有运行在系统上的进程; -f参数则扩展了输出,这些扩展的列包含了有用的信息

  • UID:启动这些进程的用户。
  • PID:进程的进程ID。
  • PPID:父进程的进程号(如果该进程是由另一个进程启动的)。
  • C:进程生命周期中的CPU利用率。
  • STIME:进程启动时的系统时间。
  • TTY:进程启动时的终端设备。
  • TIME:运行进程需要的累计CPU时间。
  • CMD:启动的程序名称。

可采用-l参数,它会产生一个长格式输出

注意使用了-l参数之后多出的那些列。

  • F:内核分配给进程的系统标记。
  • S:进程的状态( O代表正在运行; S代表在休眠; R代表可运行,正等待运行; Z代表僵化,进程已结束但父进程已不存在; T代表停止)。
  • PRI:进程的优先级(越大的数字代表越低的优先级)。
  • NI:谦让度值用来参与决定优先级。
  • ADDR:进程的内存地址。
  • SZ:假如进程被换出,所需交换空间的大致大小。
  • WCHAN:进程休眠的内核函数的地址。

实时监测进程top

  • PID:进程的ID。

  • USER:进程属主的名字。

  • PR:进程的优先级。

  • NI:进程的谦让度值。

  • VIRT:进程占用的虚拟内存总量。

  • RES:进程占用的物理内存总量。

  • SHR:进程和其他进程共享的内存总量。

  • S:进程的状态( D代表可中断的休眠状态, R代表在运行状态, S代表休眠状态, T代表跟踪状态或停止状态, Z代表僵化状态)。

  • %CPU:进程使用的CPU时间比例。

  • %MEM:进程使用的内存占可用内存的比例。

  • TIME+:自进程启动到目前为止的CPU时间总量。

  • COMMAND:进程所对应的命令行名称,也就是启动的程序名。

每个交互式命令都是单字符,在top命令运行时键入可改变top的行为。键入f允许你选择对输出进行排序的字段,键入d允许你修改轮询间隔。键入q可以退出top。用户在top命令的输出上有很大的控制权。用这个工具就能经常找出占用系统大部分资源的罪魁祸首。

挂载存储媒体

mount

mount命令提供如下四部分信息:

  • 媒体的设备文件名
  • 媒体挂载到虚拟目录的挂载点
  • 文件系统类型
  • 已挂载媒体的访问状态

手动挂载媒体设备的基本命令

mount -t type device directory

type参数指定了磁盘被格式化的文件系统类型。 Linux可以识别非常多的文件系统类型。如果是和Windows PC共用这些存储设备,通常得使用下列文件系统类型。

  • vfat: Windows长文件系统。
  • ntfs: Windows NT、 XP、 Vista以及Windows 7中广泛使用的高级文件系统。
  • iso9660:标准CD-ROM文件系统。

大多数U盘和软盘会被格式化成vfat文件系统。而数据CD则必须使用iso9660文件系统类型。后面两个参数定义了该存储设备的设备文件的位置以及挂载点在虚拟目录中的位置。

mount命令的参数

  • -a 挂载/etc/fstab文件中指定的所有文件系统

  • -f 使mount命令模拟挂载设备,但并不真的挂载

  • -F 和-a参数一起使用时,会同时挂载所有文件系统

  • -v 详细模式,将会说明挂载设备的每一步

  • -I 不启用任何/sbin/mount.filesystem下的文件系统帮助文件

  • -l 给ext2、 ext3或XFS文件系统自动添加文件系统标签

  • -n 挂载设备,但不注册到/etc/mtab已挂载设备文件中

  • -p num 进行加密挂载时,从文件描述符num中获得密码短语

  • -s 忽略该文件系统不支持的挂载选项

  • -r 将设备挂载为只读的

  • -w 将设备挂载为可读写的(默认参数)

  • -L label 将设备按指定的label挂载

  • -U uuid 将设备按指定的uuid挂载

  • -O 和-a参数一起使用,限制命令只作用到特定的一组文件系统上

  • -o 给文件系统添加特定的选项

-o参数允许在挂载文件系统时添加一些以逗号分隔的额外选项。以下为常用的选项。

  • ro:以只读形式挂载。
  • rw:以读写形式挂载。
  • user:允许普通用户挂载文件系统。
  • check=none:挂载文件系统时不进行完整性校验。
  • loop:挂载一个文件。
umount

从Linux系统上移除一个可移动设备时,不能直接从系统上移除,而应该先卸载。

Linux上不能直接弹出已挂载的CD。如果你在从光驱中移除CD时遇到麻烦,通常是因为该CD还挂载在虚拟目录里。先卸载它,然后再去尝试弹出。

umount [directory | device ]

umount命令支持通过设备文件或者是挂载点来指定要卸载的设备。如果有任何程序正在使用设备上的文件,系统就不会允许你卸载它

df

df命令会显示每个有数据的已挂载文件系统。如你在前例中看到的,有些已挂载设备仅限系
统内部使用。命令输出如下:

  • 设备的设备文件位置;
  • 能容纳多少个1024字节大小的块;
  • 已用了多少个1024字节大小的块;
  • 还有多少个1024字节大小的块可用;
  • 已用空间所占的比例;
  • 设备挂载到了哪个挂载点上。

df命令有一些命令行参数可用,但基本上不会用到。一个常用的参数是-h。它会把输出中的磁盘空间按照用户易读的形式显示,通常用M来替代兆字节,用G替代吉字节。

Linux系统后台一直有进程来处理文件或使用文件。df命令的输出值显示的是Linux系统认为的当前值。有可能系统上有运行的进程已经创建或删除了某个文件,但尚未释放文件。这个值是不会算进闲置空间的。

du

du命令可以显示某个特定目录(默认情况下是当前目录)的磁盘使用情况。

下面是能让du命令用起来更方便的几个命令行参数。

  • -c:显示所有已列出文件总的大小。
  • -h:按用户易读的格式输出大小,即用K替代千字节,用M替代兆字节,用G替代吉字节。
  • -s:显示每个输出参数的总计。

处理数据文件

sort

sort命令是对数据进行排序的 ,默认情况下, sort命令按照会话指定的默认语言的排序规则对文本文件中的数据行排序 。

-n参数,它会告诉sort命令把数字识别成数字而不是字符,并且按值排序 。

另一个常用的参数是-M,按月排序。

-k和-t参数在对按字段分隔的数据进行排序时非常有用

sort命令参数

  • -b --ignore-leading-blanks 排序时忽略起始的空白
  • -C --check=quiet 不排序,如果数据无序也不要报告
  • -c --check 不排序,但检查输入数据是不是已排序;未排序的话,报告
  • -d --dictionary-order 仅考虑空白和字母,不考虑特殊字符
  • -f --ignore-case 默认情况下,会将大写字母排在前面;这个参数会忽略大小写
  • -g --general-number-sort 按通用数值来排序(跟-n不同,把值当浮点数来排序,支持科学计数法表示的值)
  • -i --ignore-nonprinting 在排序时忽略不可打印字符
  • -k --key=POS1[,POS2] 排序从POS1位置开始;如果指定了POS2的话,到POS2位置结束
  • -M --month-sort 用三字符月份名按月份排序
  • -m --merge 将两个已排序数据文件合并
  • -n --numeric-sort 按字符串数值来排序(并不转换为浮点数)
  • -o --output=file 将排序结果写出到指定的文件中
  • -R --random-sort 按随机生成的散列表的键值排序
  • –random-source=FILE 指定-R参数用到的随机字节的源文件
  • -r --reverse 反序排序(升序变成降序)
  • -S --buffer-size=SIZE 指定使用的内存大小
  • -s --stable 禁用最后重排序比较
  • -T --temporary-directory=DIR 指定一个位置来存储临时工作文件
  • -t --field-separator=SEP 指定一个用来区分键位置的字符
  • -u --unique 和-c参数一起使用时,检查严格排序;不和-c参数一起用时,仅输出第一例相似的两行
  • -z --zero-terminated 用NULL字符作为行尾,而不是用换行符
grep
grep [options] pattern [file]

如果要进行反向搜索(输出不匹配该模式的行),可加-v参数

如果要显示匹配模式的行所在的行号,可加-n参数。

如果只要知道有多少行含有匹配的模式,可用-c参数。

如果要指定多个匹配模式,可用-e参数来指定每个模式。

默认情况下, grep命令用基本的Unix风格正则表达式来匹配模式。 Unix风格正则表达式采用特殊字符来定义怎样查找匹配的模式。

tar
tar function [options] object1 object2 ...
  • -A --concatenate 将一个已有tar归档文件追加到另一个已有tar归档文件

  • -c --create 创建一个新的tar归档文件

  • -d --diff 检查归档文件和文件系统的不同之处

  • –delete 从已有tar归档文件中删除

  • -r --append 追加文件到已有tar归档文件末尾

  • -t --list 列出已有tar归档文件的内容

  • -u --update 将比tar归档文件中已有的同名文件新的文件追加到该tar归档文件中

  • -x --extract 从已有tar归档文件中提取文件

  • -C dir 切换到指定目录

  • -f file 输出结果到文件或设备file

  • -j 将输出重定向给bzip2命令来压缩内容

  • -p 保留所有文件权限

  • -v 在处理文件时显示文件

  • -z 将输出重定向给gzip命令来压缩内容

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

omnibots

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值