环境变量PATH

上边提到了alias,也提到了绝对路径的/bin/rm ,然后你意识到没有,为什么我们输入很多命令时是直接打出了命令,而没有去使用这些命令的绝对路径?这是因为环境变量PATH在起作用了请输入 echo $PATH,这里的echo其实就是打印的意思,而PATH前面的$表示后面接的是变量

因为/bin PATH的设定中,所以自然就可以找到ls如果你将 ls 移动到 /root 底下的话,然后你自己本身也在 /root 底下,但是当你执行 ls 的时候,他就是不理你?怎么办?这是因为 PATH 没有 /root 这个目录,而你又将 ls 移动到 /root 底下了,自然系统就找不到可执行文件了,因此就会告诉你, command not found !那么该怎么克服这种问题呢?
有两个方法,一种方法是直接将 /root 的路径加入 PATH 当中!如何增加?可以使用:  
PATH=”$PATH”:/root
另一种方式则是使用完整档名,亦即直接使用相对或绝对路径来执行,例如:

/root/ls
./ls

关于rm,笔者使用最多便是-rf两个选项合用了不管删除文件还是目录都可以但是方便的同时也要多注意,万一你的手太快后边跟了/那样就会把你的系统文件全部删除的,切记切记

ls 在前面的命令中多次用到它现在你已经明白它的含义了吧没有错,就是查看某个目录或者某个文件,是list的简写。ls 后可以跟一个目录,也可以跟一个文件以下是ls的选项,在这里笔者并没有完全列出,只是列出了平时使用最多的选项其他选项,你可以自行通过man ls 查询
-a 全部的档案都列出,包括隐藏的。linux文件系统中同样也有隐藏文件这些隐藏文件的文件名是以.开头的例如.test, /root/.123, /root/.ssh 等等,隐藏文件可以是目录也可以是普通文件
-l 详细列出文件的属性信息,包括大小创建日期所属主所属组等等。ll 这个命令等同于ls –l 。

--color=never/always/auto never即不要显示颜色,always 即总显示颜色,auto 是由系统自行判断Redhat/CentOS 系统中,默认是带颜色的,因为我们平时用的ls已经alias成了ls –color=tty 所以目录的颜色是蓝色的,而可执行文件的颜色是绿色这样有助于帮我们区分文件的格式

-d 后边跟目录,如果不加这个选项则列出目录下的文件,加上后只列车目录本身

cp copy的简写,即拷贝格式为 cp [选项] [ 来源文件 ] [目的文件] ,例如我想把test1 拷贝成test2 ,这样即可 cp test1 test2,以下介绍几个常用的选项
-d 这里涉及到一个连接的概念连接分为软连接和硬连接在以后的章节中会详细解释,现在你只要明白这里的软连接跟windows中的快捷方式类似即可如果不加这个-d 则拷贝软连接时会把软连接的目标文件拷贝过去,而加上后,其实只是拷贝了一个连接文件(即快捷方式)

上例中的ln 命令即为建立连接的,以后再做详细解释
-r 如果你要拷贝一个目录,必须要加-r选项,否则你是拷贝不了目录的

-i 如果遇到一个存在的文件,会问是否覆盖Redhat/CentOS系统中,我们使用的cp其实是cp –i

下面简单做一个小试验,很快你就会明白-i 选项的作用了

上例中,touch 命令,看字面意思就是摸一下,没错,如果有这个文件,则会改变文件的访问时间,如果没有这个文件就会创建这个文件前面说过echo,其实就是打印,在这里所echo的内容”abc” “def”并没有显示在屏幕上,而是分别写进了文件 111222, 其写入作用的就是这个大于号”>” linux中这叫做重定向,即把前面产生的输出写入到后面的文件中在以后的章节中会做详细介绍,这里你要明白它的含义即可cat 命令则是读一个文件,并把读出的内容打印到当前屏幕上该命令也会在后续章节中详细介绍
-u 该选项仅当目标文件存在时才会生效,如果源文件比目标文件新才会拷贝,否则不做任何动作
mv
移动的意思,是move的简写格式为 mv [ 选项 ] [源文件] [目标文件],下面介绍几个常用的选项
-i cp-i 一样,当目标文件存在时会问用户是否要覆盖Redhat/CentOS系统中,我们使用的mv其实是mv –i
-u 和上边cp 命令的-u选项一个作用,当目标文件存在时才会生效,如果源文件比目标文件新才会移动,否则不做任何动作
该命令有集中情况,你注意到了吗?

1
目标文件是目录,而且目标文件不存在;
2
目标文件是目录,而且目标文件存在;
3
目标文件不是目录不存在;
4
目标文件不是目录存在;

目标文件是目录,存在和不存在,移动的结果是不一样的,如果存在,则会把源文件移动到目标文件目录中不存在的话移动完后,目标文件是一个文件这样说也许你会觉得有点不好理解,看例子吧

windows下的重命名,在linux下用mv就可以搞定
cat
比较常用的一个命令,即查看一个文件的内容并显示在屏幕上
-n 查看文件时,把行号也显示到屏幕上


上例中出现了一个”>>”,这个符号跟前面介绍的”>”的作用都是重定向,即把前面输出的东西输入到后边的文件中,只是”>>”是追加的意思,而用”>”,如果文件中有内容则会删除文件中内容,而”>>”则不会
-A 显示所有东西出来,包括特殊字符

tac
其实是cat的反写,同样的功能也是反向打印文件的内容到屏幕上

more
也是用来查看一个文件的内容当文件内容太多,一屏幕不能占下,而你用cat肯定是看不前面的内容的,那么使用more就可以解决这个问题了当看完一屏后按空格键继续看下一屏但看完所有内容后就会退出如果你想提前退出,只需按q键即可
less
作用跟more一样,但比more好在可以上翻,下翻空格键同样可以翻页,而按”j”键可以向下移动(按一下就向下移动一行),按”k”键向上移动在使用moreless查看某个文件时,你可以按一下”/” 键,然后输入一个word回车,这样就可以查找这个word如果是多个该word可以按”n”键显示下一个另外你也可以不按”/”而是按”?”后边同样跟word来搜索这个word,唯一不同的是,”/”是在当前行向下搜索,而”?”是在当前行向上搜索
head head后直接跟文件名,则显示文件的前十行如果加 –n 选项则显示文件前n

tail
head一样,后面直接跟文件名,则显示文件最后十行如果加-n 选项则显示文件最后n

-f 动态显示文件的最后十行,如果文件是不断增加的,则用-f 选项如:tail -f /var/log/messages

添加新评论 »