Ubuntu 中常用的命令
Ubuntu 常用命令的学习
(注:本文中用户账户为user,管理员账户为root,我的Ubuntu装在虚拟机里,本文像小说一样,给你带来不一样的学习体验!)
现在我就要带你进入Ubuntu的世界啦,Follow me!
在一个月黑风高的夜晚,我坐在电脑前,打开了虚拟机里刚刚装好的Ubuntu系统,在用user登陆后,一个棕色的操作界面出现在我的眼前,我大吃一惊,除了上面和下面的菜单栏,桌面上空空如也,只见上面的菜单栏从左到右依次列着应用程序、位置、系统、firefox、e-mail、帮助、用户切换器、输入法切换器、网络连接状态标识、声音调控器、日期和时间、电源按钮。下面的菜单栏比较单调从左到右依次是隐藏窗口显示桌面的按钮、两个可切换桌面的桌面标识、回收站。我怀着好奇心把每个栏目都倒弄了一番,发现该有的功能都有,心里一阵窃喜,但疑问也接踵而至,传说中的Linux不是命令操作非常强悍吗?那么在哪里打命令呢?我束手无策,只好拿起身边的《Linux武功秘籍》练了起来,经过七天七夜的修炼,我已基本知道了在哪可以打命令和一些常用命令,我迫不及待的想要展示自己的武功,虽然很菜,于是我在应用程序的附件里点击了终端,于是乎一个类似记事本的窗口弹了出来,我输入pwd想要知道我当前的工作目录,计算机用/home/user回应了我,这个目录是user用户的个人目录,因为我是用user用户登录的系统,所以系统把工作目录默认为user的个人目录。另外还可以在命令行界面下打命令,在图形界面按“Ctrl+Alt+Shift+F1(F2,F3,F4,F5,F6)”就进入命令行界面了,如果想回到图形界面,按“Alt+F7”就回去了,哈哈,神奇吧!好啦,废话不多说,下面我将详细的列出我和计算机的过招情况,并加上红色的解说词。
ls命令的用法示例
user@zhangchengjin-desktop:~$pwd 列出当前工作目录
/home/user
user@zhangchengjin-desktop:~$ls 列出/home/user下的目录和文件
Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$ls –l 以长格式列出/home/user下的目录和文件的详细信息
总用量 28 (就是所占的存储空间)显示目录中的总块数,包括间接块
lrwxrwxrwx1 user user 26 2011-11-24 07:49Examples -> /usr/share/example-content l表示该目录为链接目录,->指向引用文件
drwxr-xr-x2 user user 4096 2011-11-24 04:11 公共的 d表示为目录
drwxr-xr-x2 user user 4096 2011-11-24 04:11 模板
drwxr-xr-x2 user user 4096 2011-11-24 04:11 视频
drwxr-xr-x2 user user 4096 2011-11-24 04:11 图片
drwxr-xr-x2 user user 4096 2011-11-24 04:11 文档
drwxr-xr-x2 user user 4096 2011-11-24 04:11 音乐
drwxr-xr-x2 user user 4096 2011-11-24 04:11 桌面
类型与权限 链接数 所属用户 所属组 大小 最近更新的日期 时间 文件名或目录名
- 表示类型为普通文件
l 表示类型为链接文件
b 表示类型为设备文件中可供存储的接口设备
c 表示类型为设备文件中的串行端口设备
. 表示类型为隐藏文件
cd的用法和实例
user@zhangchengjin-desktop:~$pwd 显示当前工作目录
/home/user
user@zhangchengjin-desktop:~$cd / 改变工作目录到根目录下
user@zhangchengjin-desktop:/$pwd 验证cd的效果
/
user@zhangchengjin-desktop:/$cd ~ 改变工作目录到用户user的个人目录下
user@zhangchengjin-desktop:~$pwd 验证cd的效果
/home/user
user@zhangchengjin-desktop:~$cd .. 改变工作目录到当前目录的上层目录下
user@zhangchengjin-desktop:/home$pwd 验证cd的效果
/home
user@zhangchengjin-desktop:/home$cd /etc 改变工作目录到/etc下
user@zhangchengjin-desktop:/etc$pwd 验证cd的效果
/etc
user@zhangchengjin-desktop:/etc$cd ~root 改变工作目录到root的个人目录下
user@zhangchengjin-desktop:/root$pwd 验证cd的效果
/root
文件管理的综合实例
user@zhangchengjin-desktop:~$pwd 显示当前工作目录
/home/user
user@zhangchengjin-desktop:~$touch 1.txt 新建文件1.txt
user@zhangchengjin-desktop:~$touch 2.txt 新建文件2.txt
user@zhangchengjin-desktop:~$mkdir a 新建目录a
user@zhangchengjin-desktop:~$mkdir b 新建目录b
user@zhangchengjin-desktop:~$ls 验证以上操作
1.txt 2.txt a b Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$cp 1.txt ./文档 复制1.txt到当前目录下的文档目录下,.表示当前目录
user@zhangchengjin-desktop:~$cp a ./文档 复制目录a到当前目录下的文档目录下,但不成功
cp: 略过目录 “a”
user@zhangchengjin-desktop:~$cp -r a ./文档 复制目录a到当前目录下的文档目录下,成功了,对目录复制要加-r属性
user@zhangchengjin-desktop:~$mv 2.txt ./文档 移动2.txt到当前目录下的文档目录下
user@zhangchengjin-desktop:~$mv b ./文档 移动目录b到当前目录下的文档目录下
user@zhangchengjin-desktop:~$ls 验证以上操作
1.txt a Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$cd ./文档 改变工作目录到当前目录下的文档目录下
user@zhangchengjin-desktop:~/文档$ pwd 验证上面的cd操作
/home/user/文档
user@zhangchengjin-desktop:~/文档$ ls 验证上面的操作
1.txt 2.txt a b
user@zhangchengjin-desktop:~/文档$ mv 2.txt ./a 移动2.txt到当前目录下的a目录下
user@zhangchengjin-desktop:~/文档$ ls 验证上面的操作
1.txt a b
user@zhangchengjin-desktop:~/文档$ rmdir b 删除空目录b
user@zhangchengjin-desktop:~/文档$ rmdir a 删除目录a,但不成功,因为目录a不为空,rmdir只能删空目录
rmdir: 删除 “a” 失败: 目录不为空
user@zhangchengjin-desktop:~/文档$ ls 验证删除的操作
1.txt a
user@zhangchengjin-desktop:~/文档$ rm 1.txt 删除文件1.txt
user@zhangchengjin-desktop:~/文档$ rm -r a 删除目录a
user@zhangchengjin-desktop:~/文档$ ls 验证上述操作
user@zhangchengjin-desktop:~/文档$ cd 改变工作目录到用户user的个人目录下
user@zhangchengjin-desktop:~$pwd 显示当前工作目录
/home/user
user@zhangchengjin-desktop:~$ls 列出目录下的目录和文件
1.txt a Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$mv 1.txt 3.txt 重命名1.txt
user@zhangchengjin-desktop:~$ls 验证重命名是否成功
3.txt a Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$rm 3.txt 删除文件3.txt
user@zhangchengjin-desktop:~$rm -i a 删除目录a,但不成功
rm: 无法删除 “a”: 是一个目录
user@zhangchengjin-desktop:~$rm -ir a 删除目录a,成功了,删除目录一定要加-r属性
rm:是否删除 目录“a”? y 这一行是属性-i的功劳,在删除前询问,更具人性化,回答是:y/n
user@zhangchengjin-desktop:~$ls
Examples 公共的 模板 视频 图片 文档 音乐 桌面
权限管理的综合实例
user@zhangchengjin-desktop:~$pwd 显示当前工作目录
/home/user
user@zhangchengjin-desktop:~$touch 1.txt 新建文件1.txt
user@zhangchengjin-desktop:~$mkdir a 新建目录a
user@zhangchengjin-desktop:~$mkdir b 新建目录b
user@zhangchengjin-desktop:~$touch ./a/2.txt 在目录a下新建文件2.txt
user@zhangchengjin-desktop:~$ls 验证上述操作
1.txt a b Examples 公共的 模板 视频 图片 文档 音乐 桌面
user@zhangchengjin-desktop:~$ls -l ./1.txt 查看1.txt的详细信息
-rw-r--r-- 1 useruser 0 2011-11-25 07:07 ./1.txt
user@zhangchengjin-desktop:~$chgrp root ./1.txt 把文件1.txt的所属群组修改为root,但不成功,root可以改
chgrp: 正在更改 “./1.txt” 的所属组: 操作不允许
user@zhangchengjin-desktop:~$chown root ./1.txt 把文件1.txt的所有者修改为root,也不成功,只有root可以改
chown: 正在更改 “./1.txt” 的所有者: 操作不允许
user@zhangchengjin-desktop:~$su - 切换到root用户
密码:
root@zhangchengjin-desktop:~#pwd 显示当前工作目录
/root
root@zhangchengjin-desktop:~#chown root /home/user/1.txt 把文件1.txt的所有者修改为root
root@zhangchengjin-desktop:~#chgrp root /home/user/1.txt 把文件1.txt的所属群组修改为root
root@zhangchengjin-desktop:~#ls -l /home/user/1.txt 验证
-rw-r--r-- 1 rootroot 0 2011-11-25 07:36 /home/user/1.txt
root@zhangchengjin-desktop:~#chmod o+x /home/user/1.txt 修改1.txt的权限
root@zhangchengjin-desktop:~#ls -l /home/user/1.txt 验证
-rw-r--r-x 1 rootroot 0 2011-11-25 07:36 /home/user/1.txt
root@zhangchengjin-desktop:~#chmod 764 /home/user/1.txt 修改1.txt的权限
root@zhangchengjin-desktop:~#ls -l /home/user/1.txt 验证
-rwxrw-r-- 1 rootroot 0 2011-11-25 07:36 /home/user/1.txt
root@zhangchengjin-desktop:~#ls -l /home/user
总用量 36
drwxr-xr-x 2 useruser 4096 2011-11-25 07:08 a
drwxr-xr-x 2 useruser 4096 2011-11-25 07:08 b 注意目录b的详细信息
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#chown root:root /home/user/b 用这种方式可同时修改所有者和所属群组
root@zhangchengjin-desktop:~#ls -l /home/user 验证
总用量 36
drwxr-xr-x 2 useruser 4096 2011-11-25 07:08 a
drwxr-xr-x 2 rootroot 4096 2011-11-25 07:08 b 注意变化
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#chmod g+w /home/user/b 修改目录b的权限
root@zhangchengjin-desktop:~#ls -l /home/user 验证
总用量 36
drwxr-xr-x 2 useruser 4096 2011-11-25 07:08 a
drwxrwxr-x 2 rootroot 4096 2011-11-25 07:08 b
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#ls -l /home/user 显示目录a的详细信息
总用量 32
drwxr-xr-x 2 useruser 4096 2011-11-25 07:08 a 注意目录a
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#ls -l /home/user/a 显示目录a下面文件2.txt的详细信息
总用量 0
-rw-r--r-- 1 useruser 0 2011-11-25 07:08 2.txt
root@zhangchengjin-desktop:~#chown -r root:root /home/user/a 修改目录a以及其下面文件的所有者和所属群组,不成功
chown: invalidoption -- r
请尝试执行“chown--help”来获取更多信息。
root@zhangchengjin-desktop:~#chown -R root:root /home/user/a 修改目录a以及其下面文件的所有者和所属群组,用属性-R
root@zhangchengjin-desktop:~#ls -l /home/user 显示目录a的详细信息
总用量 32
drwxr-xr-x 2 rootroot 4096 2011-11-25 07:08 a 注意
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#ls -l /home/user/a 显示目录a下文件2.txt的详细信息
总用量 0
-rw-r--r-- 1 rootroot 0 2011-11-25 07:08 2.txt
root@zhangchengjin-desktop:~#chmod -R 777 /home/user/a 修改权限
root@zhangchengjin-desktop:~#ls -l /home/user 验证
总用量 32
drwxrwxrwx 2 rootroot 4096 2011-11-25 07:08 a 注意变化
lrwxrwxrwx 1 useruser 26 2011-11-24 07:49 Examples ->/usr/share/example-content
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 公共的
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 模板
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 视频
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 图片
drwxr-xr-x 2 useruser 4096 2011-11-25 00:35 文档
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 音乐
drwxr-xr-x 2 useruser 4096 2011-11-24 04:11 桌面
root@zhangchengjin-desktop:~#ls -l /home/user/a
总用量 0
-rwxrwxrwx 1 rootroot 0 2011-11-25 07:08 2.txt 注意变化
查看指令的用法
cat 显示文件内容,从第一行到最后一行 cat 属性 文件
tac 显示文件内容,从最后一行到第一行,与cat相反 tac 属性 文件
more 显示文件内容,但只能向后翻不能向前翻 more 文件
less 显示文件内容,向前向后都可以 less 文件
head 显示文件的前几行内容 head -n 文件
tail 显示文件的后几行内容 tail -n 文件
nl 显示文件内容并在前面加上行号 nl 文件
od 把内容以二进制的形式显示出来 od 文件
查找指令的用法
locate 配合数据库查询文件位置 locate 文件
find 实际搜索硬盘查询文件 find 路径 参数
which 查找可执行文件的位置 which 文件
whereis 查找文件 whereis 文件
cut的用法
cut -d “分割符” -f 1-n -c 1-n 文件
-d 后面接分割符,默认为空格,记得要加双引号
-c 后面接字符的序数
-f 后面接区块的序数
sort的用法
sort –t 分隔符 –nru 文件
-t 后面跟分隔符,默认为Tab
-n 按数字排序
-r 反向排序
-u 相同出现的行,只出现一次
wc的用法
wc -lmw 文件
-l 统计多少行
-m 统计多少字符
-w 统计多少子
tee的用法
将数据同时显示在屏幕上和文件中
uniq的用法
uniq -cdu 文件
-c 显示每行连续出现的次数
-d 仅显示连续出现的行
-u 仅显示没有连续出现的行
clear的用法
clear
清屏
alias的用法
alias 别名=’指令 参数’
命名别名使自己的操作更方便
unalias的用法
unalias 别名
取消别名
命令重定向
所谓的命令重定向就是把你目前得到的数据转到其他地方
> 例:ls –l > a.txt (将结果输出到a.txt而不是显示在屏幕上,若该文件存在则覆盖)
2> 例1:ls -l > a.txt 2>b.txt (将结果中正确的输出到a.txt,错误的输出到b.txt)
例2:ls -l > a.txt 2>/dev/null (将结果中正确的输出到a.txt,错误的丢弃掉)
例3:ls -l > a.txt 2>&1 (将结果中正确的和错误的都输出到a.txt)
>> 例:ls –l > a.txt (将结果输出到a.txt而不是显示在屏幕上,若该文件存在则追加)
< 输入重定向命令,从文件中读入命令输入,而不是从键盘中读入。
管线命令
命令1 | 命令2 | 命令3
tr的用法
tr -ds 字符串 文件
-d 删除字符串
-s 取代字符串
grep的用法
grep “字符串” 文件
在文件中搜索含有字符串的行并输出