首页 > 代码库 > <Linux命令,编辑器和shell编程>之命令部分读书笔记

<Linux命令,编辑器和shell编程>之命令部分读书笔记

ctrl+u可以在shell下删除行,如果此键不起作用,就试试ctrl+x

ctrl+z可以将程序挂起,不会终止程序,但可以将程序挂起。

通过fg命令可再把此作业切换到前台

cp命令的目标文件如果是一个已经存在的文件,那么此命令就会把原来的文件覆盖,所以最好把cp命令起别名为:alias cp="cp -i",mv命令也是一样的

ls的-F选项使目录后面显示斜杠,可执行文件后面显示星号

mkdir的-p选择可以通过一个命令把子目录也一并创建出来

不带任何参数的cd命令将把用户的主目录设置为工作目录

右要删除包含其它文件的目录,则需要首先使用rm将其中听文件删除后,再删除该目录

mv命令可以同时移动多个文件到同一个目录,最后的一个参数是目标目录

mv names.txt temp.exe newDirectory

总是可以把可执行文件的文件名前另上./,以执行工作目录下的可执行文件

cat > sample.txt

输入这个命令后,可以在终端中输入文字到文件sample.txt中,此操作称为重定向

在重定向命令执行前,如果文件已经存在,那么shell将重写它并销毁其原来的内容。

使用cat和重定向输出符号可以将多个文件静候地连接成一个较大的文件(cat为catenate的缩写)

cat 1.txt 3.txt > combie.txt

shell提供了一个noclobber功能,该功能可防止重定向时重写已经存在的文件。在bash下,通过命令set -o noclobber设置变量noclobber可以启用此功能。该命令使用+o可以禁用此功能,在tch下,使用set noclobber和unset noclobber命令来启用和禁用此功能。

使用组合符号">|"可以重写noclobber的设置,

$ cat orange pear > orange

cat : orange: input file is output file

虽然cat报告了错误,但shell在给出错误之前就已经销毁了已存在的orange文件的内容。执行命令后,orange文件与pear文件 的内容相同。这是由于shell当遇到重定向符号(>)时,它首先采用的行动是删除原来的orange文件的内容。要实现这个功能,可以使用下面的方式:

cat orange pear > temp

mv temp orange

使用追加输出符号>>可以向某个文件末尾添加新的信息,并且不改变已有信息。

只可以将不想看到或者是不想保存的数据重定向到/dev/null,这样输出数据将在无形中消失

下面的cat命令将文件messages的内容清空,但保留文件的所有者和权限

cat /dev/null > message

tee实用程序将标准输入复制到文件和标准输出。该实用程序被命名为tee是因为:它只有一个输入,但实现双向输出。如下例中,who的输出通过管道变为tee的标准输入,tee实用程序将标准输入复制到文件who.out,同时也复制到标准输出。tee的标准输出又通过管道变为grep(显示包含字符串sam的行)的标准输入。

$ who | tee who.out | grep root

作业编程与PID编号,如果在命令行的末尾输入符号&后按回车,那么shell将在后台运行这个作业。

 

Linux的目录

/etc 本地计算机系统配置文件

/etc/opt 包含/opt目录下插件软件的配置文件

/opt可选的插件软件包

/var变量数据

 

权限

用a代表所有用户,用o代表其它用户,用g代表group用户,用u代表文件所有者(虽然不一定一直是文件的所有者)

第一个数字指定文件所有者的权限,第二个数字指定组用户的权限,第三个数字指定其它用户的权限

 

链接

硬链接

文件的硬链接以另一个文件的形式出现在文件结构中。若文件与其链接出现在同一个目录中,那么该文件与其链接的名字必须不同,因为同一个目录中的文件不能同名。只能在包含文件的文件系统中创建该文件的硬链接。

不带-s或--symbolic选项的实用程序ln可为已存在的文件创建硬链接

<Linux命令,编辑器和shell编程>之命令部分读书笔记