代码改变世界

Ubuntu 中常用的命令

2011-11-30 21:06  java线程例子  阅读(361)  评论(0编辑  收藏  举报

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  “字符串”    文件

在文件中搜索含有字符串的行并输出