在Unix和Mac上的Shell编程(2)
小姐姐整楼(已被授权)
文件名中的空格怎么破?
cat my test document
cat后面有三个参数,这样子看不可以的,咋办?
解决方法:
使用"my test document"
my\test\document(使用反斜杠对空格进行转义)
其他怪异的字符
比如?在shell中有特殊含义。
在shell中如果想显示的话,这个样子 \?->?
标准的输入输出和IO重定向(这个我就不解释概念了,大致就是这么个意思,一个unix的系统都是标配有的东西,抽象了一些东西)
用Sort对4个名字来排序,(注意,标准的UNIX惯例是完成最后一行输入后1⃣️指定文件序列结束,Ctrl+D)
用这种方式,可以不用吧名字写入文件。可以直接写在终端里面,然后把结果写到标准的输出设备上面)
输出重定向,这是一种能力,可以将发送到标准输出的命令转移到文件中。
把who命令的输出发送到users文件里面。
而后把line 1送入users,看输出知道覆盖了之前的who的输出。
然后用>>是追加到文件的末尾。
按照对称的思想,那么这个命令到文件的操作应该是可逆的。yes!
输入重定向。
>大于号,输出
<小于号,输入
wc -l <args>,这是一开始的写法
用了<
管道命令
把两个命令连起来,以前吧,接触这个概念的时候,很形象的想到了(你的屁股下面有嘴)不说了。。。。
命令后话
一行输入多个命令
中间用;分割
后台挂起
现在的命令,一敲回车,瞬间完成,但是还有一些时候需要执行很久,那你就需要在后台执行。
要点,命令末尾家&
会主动显示两个数字:
命令的作业号
进程ID->PID
ps命令不加任何参数时,显示你所拥有的进程状态
PID:进程ID
TTY:进程所在的终端号
CMD:进程名字
TIME:以分秒显示所使用的计算机时间
PPID:父进程
STIME:进程开始时间
赞 (0)