Linux常用命令
Posted 逝去的浪花
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令相关的知识,希望对你有一定的参考价值。
1、touch 功能说明:改变文件或目录时间。 语法: touch 创建文件 $ touch demo.c$ ls -l -rw-r--r-- 1 root root 0 2月 9 09:03 demo.c touch 更新已有文件时间 $ touch demo.c$ ls -l -rw-r--r-- 1 root root 0 2月 9 09:04 demo.c touch -at 使用参数更新访问时间 $ touch -at 01080101 demo.c $ ls -l -rw-r--r-- 1 root root 0 2月 9 09:04 demo.c $ ls -lu -rw-r--r-- 1 root root 0 1月 8 01:01 demo.c2、less 功能说明:less的用法比起more更加的有弹性。在more的时候,我们并没有办法向前面翻,只能往后面看,但若使用了less时,就可以使用 [pageup] [pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容。 语法: 查看文档,分页显示 # less settings.xml ps查看进程信息并通过less分页显示 # ps -ef | less 浏览多个文件 # less log2013.log log2014.log
3、more 功能说明: more 用于分页显示文本文件 语法: 显示指定的屏幕行数 $ more -5 demo 从指定行开始显示,此处的-5是为了显示数据段好截取 $ more -5 +30 demo
4、sed(stream editor) 功能说明: 一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换、删除、新增、选取等特定工作。 语法: 常用选项: -n∶使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN的资料一般都会被列出到萤幕上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e∶直接在指令列模式上进行 sed 的动作编辑; -f∶直接将 sed 的动作写在一个档案内, -f filename 则可以执行 filename 内的sed 动作; -r∶sed 的动作支援的是延伸型正规表示法的语法。(预设是基础正规表示法语法) -i∶直接修改读取的档案内容,而不是由屏幕输出。 常用命令: a ∶新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~ c ∶取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行! d ∶删除,因为是删除啊,所以 d 后面通常不接任何咚咚; i ∶插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); p ∶列印,亦即将某个选择的资料印出。通常 p 会与参数 sed -n 一起运作~ s ∶取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法! 举例 :(假设我们有一文件名为ab) 删除某行 # sed '1d' demo.txt #删除第一行 # sed '$d' demo.txt #删除最后一行 # sed '2,$d' demo.txt #删除第二行到最后一行 显示某行 # sed -n '1p' demo.txt #显示第一行 # sed -n '1,2p' demo.txt #显示第一行到第二行 使用模式进行查询 # sed -n '/ruby/p' demo.txt #查询包括关键字ruby所在所有行 # sed -n '/\\$/p' demo.txt #查询包括关键字$所在所有行,使用反斜线\\屏蔽特殊含义 增加一行或多行字符串 # cat | sed '1a sty' demo.txt abc ac bc ab sty 代替一行或多行 # sed '1,2c Hi' demo.txt Hi Hi 替换一行中的某部分 # sed 's/bc/abc/g' demo.txt aabc ab ac abc
5、mount 功能说明: 挂载文件系统。 语法: 使用/mnt/vcdrom访问光盘镜像文件mydisk.iso里的所有文件 #mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
建立一个目录用来作U盘挂接点(mount point) #mount -t vfat /dev/sdd1 /mnt/usb 现在可以通过/mnt/usb来访问U盘 #mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
6、umount 功能说明: 卸除文件系统。 语法: 通过设备名卸载 # umount -v /dev/sda1 通过挂载点卸载 # umount -v /mnt/usb /
7、pstree(process status tree) 功能说明: 以树状图显示进程间的关系。ps命令可以显示当前正在运行的那些进程的信息,但是对于它们之间的关系却显示得不够清晰。在Linux系统中,系统调用fork可以创建子进程,通过子shell也可以创建子进程,Linux系统中进程之间的关系天生就是一棵树,树的根就是进程PID为1的init进程。 语法: 格式: pstree 以树状图显示进程,只显示进程的名字,且相同进程合并显示。
格式: pstree -p 以树状图显示进程,还显示进程PID。
格式: pstree <pid> 格式: pstree -p <pid> 以树状图显示进程PID为<pid>的进程以及子孙进程,如果有-p参数则同时显示每个进程的PID。
格式: pstree -a 以树状图显示进程,相同名称的进程不合并显示,并且会显示命令行参数,如果有-p参数则同时显示每个进程的PID。
因为pstree输出的信息可能比较多,所以最好与more/less配合使用。 # pstree -p init(1)─┬─NetworkManager(1449)─┬─dnsmasq(28501) │ ├─NetworkManager(1453) │ └─NetworkManager(1537) ├─VGAuthService(9494) ├─accounts-daemon(2198)───accounts-daemon(2199) ├─acpid(1640) ├─atd(1646) ├─bamfdaemon(2835)─┬─bamfdaemon(2839) │ └─bamfdaemon(2841) ├─bluetoothd(1060) ├─colord(2502)─┬─colord(2504) │ └─colord(2828) ├─console-kit-dae(2221)─┬─console-kit-dae(2222) │ ├─console-kit-dae(2223) │ ├─console-kit-dae(2224) │ ├─console-kit-dae(2225) │ ├─console-kit-dae(2226)
8、nice 功能说明: 设置优先权。优先级的数值为-20~19,其中数值越小优先级越高,数值越大优先级越低,-20的优先级最高,19的优先级最低。需要注意的是普通用户只能在0~19之间调整应用程序的优先权值,只有超级用户有权调整更高的优先权值(从-20~19)。 语法: 选项介绍: -n <优先级> 指定优先级; --help 帮助信息; --version 版本信息; # nice -n 5 su # ps -l F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 9776 9719 0 80 0 - 1898 poll_s pts/1 00:00:00 sudo 4 S 0 9777 9776 0 80 0 - 1833 wait pts/1 00:00:00 su 4 S 0 9785 9777 0 80 0 - 1941 wait pts/1 00:00:05 bash 5 S 0 19473 1 0 80 0 - 989 poll_s pts/1 00:00:00 dbus-launch 4 T 0 27629 9785 0 82 2 - 566 signal pts/1 00:00:00 ping 0 R 0 28609 9785 0 80 0 - 1601 - pts/1 00:00:00 ps UID:代表执行者的身份 PID: 代表这个进程的代号 PPID:代表这个进程是由哪个进程发展衍生而来的,亦即父进程的代号 PRI:代表这个进程可被执行的优先级,其值越小越早被执行 NI:代表这个进程的nice值
9、exit 功能说明: 退出目前的 shell。
10、su(super user) 功能说明: 变更用户身份。 切换到root用户 $ su - root 变更帐号为 root 并在执行 ls 指令后退出变回原使用者 su -c ls root
11、sudo(superuser do 功能说明: 以系统管理员身份来执行指令 语法: 允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。
以上是关于Linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章