第五章 Linux命令和技巧
1. mount umount 命令
在Linux里面想要使用你的软盘和光盘可不是像在Windows里面那么的危险。
想想看如果你在Windows里面安装一个光盘里面的软件或者玩游戏的时候,你的女朋友,甭管是第几个女朋友,因为对你每天打游戏而不做晚饭,乃至于别人做了晚饭你居然没时间吃,而气急败坏的按了一下光盘的Eject按钮……哈哈,害怕了?放心,在Linux里面这种事情绝对不用你操心。
要使用光盘,首先把光盘安放好以后,执行以下命令:
mount -t iso9660 /dev/cdrom /mnt/cdom 把光驱挂装到/mnt/cdrom目录
-t参数是指定光盘的文件系统类型,一般来说,光盘都是用的iso9660标准的格式。接下来的/dev/cdrom是你的光驱对应的设备文件,我们前面说过每一个硬件设备都对应了一个标准的设备文件。最后一个/mnt/cdrom目录是你的一个本地硬盘上的目录,在使用以前如果发现没有这个目录,可以建立一个。当然也不一定非要使用这个目录,你甚至可以很变态的使用mount /dev/cdrom /root命令把你的光驱挂装到你的的/root目录,这样一来你的/root的内容将不再是原来的内容,直到你取消挂载。
下面的命令取消挂载:
umount /mnt/cdrom 或 umount /dev/cdrom
这两个命令都可以把刚才挂装上去的光盘取消挂载,只有这样你的光盘才能取出。不行的话,你再执行一次挂装命令,然后按一下光驱上的Eject按钮,看看有没有什么反应啊?没有,对不对?这就是Linux的一个优点,虽然操作起来有点麻烦的感觉,但是想想看,非常安全和稍微的复杂,你选哪一个?
使用软盘的方法也很类似:
mount /dev/fd0 /mnt/floppy
/dev/fd0是你的软盘对应的设备文件,后面的自然是你的挂装目录。但是如果这个时候你想要尝试能不能在没有取消软盘的挂装就推出软盘,你就是一个非常BT的人了。有没有搞错?软盘的退出是机械的操作,你硬要按出来,我有什么办法?那么取消软盘挂载的方法也是很类似的:
umount /dev/fd0 或 umount /mnt/floppy
其实挂装时候第一个参数-t,可以省略,因为系统会自动的判断应该用什么样的格式来识别。不过知道了我们用的软盘或者光盘的格式,对于挂装一个ISO文件有帮助。
mount -t iso9660 -o loop /home/kris/somewhat.iso /mnt/cdrom
我们都知道现在网上有很多的ISO文件,就是把光盘的所有内容打包成为一个文件,方便网上的传送。我们获得这样的文件以后不一定非要用刻录机把它刻录成为光盘,我们只要用上面的命令就可以把光盘的ISO文件挂载到/mnt/cdrom目录了。第一个参数-t iso9660就是光盘使用的文件系统格式,第二个参数是loopback的意思。
取消挂装:umount /mnt/cdrom
2. 管道命令
管道命令是Linux系统的一个很重要的内容,这里我们只介绍一些简单的。
首先我们已经学过一个命令cat,用来显示一个文件的内容,但是你有没有遇到一个文件很长,一页显示不完的情况?如果你需要把一个很长的文件分页显示,每当你按一个键才显示下一页的话,你可以用more命令:
more LoveLetter
这样,LoveLetter的内容显示在屏幕上,没到一页就自动停下来,等待你的按键,然后才继续显示下面一页。
可是如果我们用ls命令显示一个目录的所有文件的时候遇到一页不能显示完的情况该怎么办?这就需要一个管道符号“|”,就是“\”按钮上面的字符:
ls /dev | more
下面,我们遇到一个新的问题,我们不仅仅想要看看/dev目录下面有哪些文件,我们还希望用一个文件来纪录刚才ls的命令显示的所有结果,难道需要用手工输入?不需要,我们介绍两个管道符号:“>;”“>;>;”,也就是大于符号啦。
ls /dev >; filenames.txt
还有一个管道符号是由两个大于号组成的“>;>;”,它和刚才“>;”的区别在于一个大于符号的管道是用来创建一个新的文件filenames.txt,如果已经有了同名的文件就复盖掉以前的内容;而两个大于符号的管道是用来在已经存在的文件后面追加新的内容,如果没有这个文件就创建它。
现在我们vi filenames.txt看看一共有多少行,是不是1000多行啊?我们运行
ls /dev >;>; filenames.txt
再来vi filenames.txt看看,是不是一共2000多行啦?
其实这两个管道符号很容易记忆,向左边的箭头意思就是把前面命令的内容输入到后面的文件中去,刚才那个“|”管道符号是用来把前面命令的输出结果当作后面一个命令的输入数据。下面我们看一个和刚才“>;>;”刚刚相反的管道符号“<<”:
cat >;>; friends << "EOF"
>; a
>; b
>; c
>; EOF
运行第一行以后,意思就是把我们接下来的输入内容保存到friends文件里面,当我们输入“EOF”的时候结束。“<<”的意思就是向前面的命令传送一个数据。
中间我象征性的输入了a b c三行,每一行前面的“>;”是系统自动产生的提示符号。第四行输入“EOF”系统就保存刚才输入的a b c三行到一个叫做friends的文件里面去。
现在我们cat friends看看是不是刚才的输入成功的保存了。怎么样,同样的命令,使用不同的管道符号,即可以显示文件内容,也可以用来创建文件,这就是管道符号的强大
3. Linux使用技巧(没有整理完成,有待大家的帮助)
Linux中有太多的使用技巧,这里慢慢的总结:
4. 基本命令总结
1) ls
ls --color=never *.txt >; report 不显示文字颜色,将所有txt文件记录到report文件中
2) cd
cd ../ 到上一级目录
cd ../.. 到上二级目录
cd ~ 进入用户的个人目录,root用户就是/root目录,kris用户就是/home/kris目录
3) rm
rm -fr 目录名 直接删除一个目录和里面的所有目录,没有任何提示
4) cp
cp 源目录 目标位置 -R 复制原目录里面所有的文件和子目录的内容
5) echo
echo message “我爱你” 在字符界面下面显示一些内容,这里是“我爱你”
6) export
export LC_ALL= 定义一个变量LC_ALL并且设置为空NULL
export LANG=zh_CN.gb2312 定义一个变量LANG的值是zh_CN.gb2312
export http_proxy="http://xxx.xxx.xxx.xxx:port"
定义http代理服务器
7) find
find -iname [目录] 文件名 在指定目录里面(如果不指定目录就是当前目录)查找指定文件名的文件
grep
ps -A | grep some_command
用ps命令加上-A参数显示所有的当前运行的进程,用管道符号“|”加上grep命令检索是否有我们指定的some_command运行
9) lynx
lynx
www.google.com
字符界面的网络浏览器,我们这里用来浏览
www.google.com,因为没有图片,所以非常快