常用命令
1.sudo su:切换到root用户,exit退出
2./usr :存放的是软件资源管理包
3.
/ 根目录 bin //系统可执行程序,如命令 boot //内核和启动程序,所有和启动相关的文件都保存在这里 grub //引导器相关文件 dev //设备文件 etc //系统软件的启动和配置文件,系统在启动过程中需要读取的文件都在这个目录。如LILO参数、用 户账户和密码。 home //用户的主目录。下面是自己定义的用户名的文件夹 lib //系统程序库文件,这个目录里存放着系统最基本的动态链接共享库,类似于Windows下的system32 目录,几乎所有的应用程序都需要用到这些共享库。 media //挂载媒体设备,如光驱、U盘等 mnt //目录是让用户临时挂载别的文件系统,如挂载Windows下的某个分区,ubuntu默认还是挂载在/media 目录。 opt //可选的应用软件包(很少使用) proc //这个目录是系统内存的映射,我们可以直接访问这个目录来获取系统信息。也就是说,这个目录 的内容不在硬盘上而是在内存里。 sbin //管理员系统程序 selinux srv sys //udev用到的设备目录树,/sys反映你机器当前所接的设备 tmp //临时文件夹 usr //这是个最庞大的目录,我们要用到的很多应用程序和文件几乎都存放在这个目录下。] bin // 应用程序 game //游戏程序 include lib //应用程序的库文件 lib64 local //包含用户程序等 sbin //管理员应用程序
4. echo $SHELL:$代表环境变量
5.shell,命令解释器
6.bash,bore again shell 命令解释器
7.主键盘快捷键
| 功能 | 快捷键 | 助记 | |-----------+-----------+------------------| | 上 | Ctrl-p | previous | | 下 | Ctrl-n | next | | 左 | Ctrl-b | backward | | 右 | Ctrl-f | forward | | Del | Ctrl-d | delete光标后面的 | | Home | Ctrl-a | the first letter | | End | Ctrl-e | end | | Backspace | Backspace | delete光标前面的 |
8.more
more [OPTION] FILE…
查看文本文件的内容,屏幕显示完一屏就等待用户按下任意键再滚动到下一屏,如果中
途不想继续看下去了,可以按Ctrl+C或q终止显示。 按空格往下翻一屏,按回车健往下翻一行
9. head
head [OPTION]… FILE…
显示指定文件的前面几行。如果没有指定文件,将从标准输入(键盘)上读取。如果没
有指定要显示的行数,则默认显示前10行。如果要显示文件的前5行:
$ head -5 file1
10. tail
tail [OPTION]… FILE…
显示文件的最后几行。若没有指定显示的行或字符数,则默认显示末尾10行。如果要显
示文件末5行:
$ tail -5 file1
动态监控日志尾部,那就是使用命令:tail -f 文件名
11.硬链接:
touch hello
ln hello word_h
12.软链接:在创建的时候用绝对路径也是可以将软连接文件移动到任意位置打开
ln -s hello word_s
od
od -tcx file1
-t 指定数据的显示格式,主要的参数有:
c ASCII字符或反斜杠序列
d[SIZE] 有符号十进制数,每个整数SIZE字节。
f[SIZE] 浮点数,每个整数SIZE字节。
o[SIZE] 八进制(系统默认值为02),每个整数SIZE字节。
u[SIZE] 无符号十进制数,每个整数SIZE字节。
x[SIZE] 十六进制数,每个整数SIZE字节。
find
根据文件名查找
find pathname -options [-print -exec -ok -name -type...]
在目录中搜索文件,path指定目录路径,系统从这里开始沿着目录树向下查找文件。它
是一个路径列表,相互用空格分离,如果不写path,那么默认为当前目录。Expression 是
find命令接受的表达式,find命令的所有操作都是针对表达式的。
一条最常用的find命令--在当前目录及子目录下查找所有以file开头的文件名。
$ find . -name 'file*'
$ find / -name 'vimrc'
$ find ~ -name '*.c'
$ find /usr/ -name "*tmp*" -exec ls -l { } \;
find ./ -name "*tmp" -ok rm { } \;
find ./ -size +2k
find ./ -type 'd'
grep
根据内容检索
grep [options] PATTERN [FILE...]
在指定文件中搜索特定的内容,并将含有这些内容的行输出到标准输出。若不指定文件
名,则从标准输入读取。
[options]部分包含的主要参数:
18 第4章 查找与检索
-I:不区分大小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
-R: 连同子目录中所有文件一起查找。
比如到系统头文件目录下查找所有包含printf的文件
$ grep 'printf' /usr/include -R
xargs
从标准输入建立和执行命令行
xargs [OPTION] [command]
它的作用是将参数列表转换成小块分段传递给其他命令,以避免参数列表过长的问题
在使用find命令的-exec选项处理匹配到的文件时,find命令将所有匹配到的文件一起
传递给exec执行。但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几
分钟之后,就会出现溢出错误。错误信息通常是“参数列太长”或“参数列溢出”。这就是
xargs命令的用处所在,特别是与find命令一起使用。
find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是
全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并
如此继续下去。
查找系统中的每一个普通文件,然后使用xargs命令来测试它们分别属于哪类文件:
find . -type f | xargs file
查找usr目录下名字以“tmp”开头的文件,将其详细信息列出。
find /usr -name "tmp*" | ls -l
find /usr -name "tmp*" | xargs ls -l
find /usr -name "tmp*" -print0 | xargs -0 ls -l
-print0表示输出以null分隔(-print使用换行);-0表示输入以null分隔。
查找当前目录下,文件名包含“bin”字串的文件,并在文件中搜索“printf”这个词
find ./ -name "*bin*" | grep "printf"
find ./ -name "*bin*" | xargs grep "printf"
find ./ -name "*bin*" -print0 | xargs -0 grep "printf"
dd
dd:拷贝
例1:拷贝光碟(注意,你的光碟是标准的 iso9660格式才可以这么做唷!)
dd if=/dev/cdrom of=cdrom.iso
例2:将文件sfile拷贝到文件 dfile中。
$ dd if=sfile of=dfile
例3:创建一个100M的空文件
dd if=/dev/zero of=hello.txt bs=100M count=1
/dev/null,外号叫无底洞,你可以向它输出任何数据,它通吃,并且不会撑着!
/dev/zero,是一个输入设备,你可你用它来初始化文件,从里面读出来的数据都是0。
使用mke2fs命令将常规文件格式化成分区当成文件系统来使用,使用mount借助loop设
备把映像文件当成磁盘分区挂载。
1.以/dev/zero为输入文件,imagefile为输出创建一个2M大小的文件
$dd if=/dev/zero of=imagefile bs=2048 count=1024
2.使用mke2fs命令将该文件制作成文件系统。制作期间需输入“y”确认。
$mke2fs imagefile
3.制作成功后可以将该文件使用mount命令借助loop挂载到/mnt下
$sudo mount -o loop imagefile /mnt
4.可以查看到lost+found缺省目录
$ls /mnt
5.可以像使用普通磁盘一样,直接在里面创建文件并写入内容。
$sudo vi hello.c
6.lost+found hello.c
$ls /mnt
7.在/mnt内执行mount命令可以查看该“文件系统”的详细信息。
$mount
如:/home/itcast/mydisk on /mnt type ext2 (rw)
8.可使用umount命令将该“磁盘”卸载。
$sudo umount /mnt
umask
umask [-p] -S [mode]
umask指定用户创建文件时的掩码,其中的mode和chmod的命令中的格式一样。如果不用
mode参数,则显示当前的umask设置。如果用-S参数,则以符号形式显示设置。
$ umask
0022
$ umask -S
u=rwx,g=rx,o=rx
比如该用户touch或gedit创建一个文件,则其默认权限为-rw-r-r–,如果该用户创
建一个可执行文件(比如编译生成的程序),则其默认权限为-rwxr-xr-x。也就是说,由于
umask的设定,创建的文件默认是不具有g的w权限和o的w权限的,除非用chmod更改权限。
创建终端
创建终端标签 Ctrl + Shift + t
切换标签 Alt+n(n=1)
新开终端 Ctrl + Shift + n