中级 Linux 用户非常有用的 20 个命令.docx
《中级 Linux 用户非常有用的 20 个命令.docx》由会员分享,可在线阅读,更多相关《中级 Linux 用户非常有用的 20 个命令.docx(50页珍藏版)》请在冰豆网上搜索。
中级Linux用户非常有用的20个命令
21.命令:
Find
搜索指定目录下的文件,从开始于父目录,然后搜索子目录。
viewsource
print?
01
root@tecmint:
~#find-name*.sh
02
03
./Desktop/load.sh
04
./Desktop/test.sh
05
./Desktop/shutdown.sh
06
./Binary/firefox/run-mozilla.sh
07
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh
08
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh
09
./Downloads/kdewebdev-3.5.8/admin/cvs.sh
10
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh
11
./Downloads/wheezy-nv-install.sh
注意:
`-name‘选项是搜索大小写敏感。
可以使用`-iname‘选项,这样在搜索中可以忽略大小写。
(*是通配符,可以搜索所有的文件;‘.sh‘你可以使用文件名或者文件名的一部分来制定输出结果)
viewsource
print?
01
root@tecmint:
~#find-iname*.SH(find-iname*.Sh/ find-iname*.sH)
02
03
./Desktop/load.sh
04
./Desktop/test.sh
05
./Desktop/shutdown.sh
06
./Binary/firefox/run-mozilla.sh
07
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh
08
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh
09
./Downloads/kdewebdev-3.5.8/admin/cvs.sh
10
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh
11
./Downloads/wheezy-nv-install.sh
viewsource
print?
01
root@tecmint:
~#find-name*.tar.gz
02
03
/var/www/modules/update/tests/aaa_update_test.tar.gz
04
./var/cache/flashplugin-nonfree/install_flash_player_11_linux.i386.tar.gz
05
./home/server/Downloads/drupal-7.22.tar.gz
06
./home/server/Downloads/smtp-7.x-1.0.tar.gz
07
./home/server/Downloads/noreqnewpass-7.x-1.2.tar.gz
08
./usr/share/gettext/archive.git.tar.gz
09
./usr/share/doc/apg/php.tar.gz
10
./usr/share/doc/festival/examples/speech_pm_1.0.tar.gz
11
./usr/share/doc/argyll/examples/spyder2.tar.gz
12
./usr/share/usb_modeswitch/configPack.tar.gz
注意:
以上命令查找根目录下和所有文件夹以及加载的设备的子目录下的所有包含‘tar.gz'的文件。
’find'命令的更详细信息请参考35FindCommandExamplesinLinux
王瑞平
翻译于26天前
1人顶
顶 翻译的不错哦!
22.命令:
grep
‘grep‘命令搜索指定文件中包含给定字符串或者单词的行。
举例搜索‘/etc/passwd‘文件中的‘tecmint'
viewsource
print?
1
root@tecmint:
~#greptecmint/etc/passwd
2
3
tecmint:
x:
1000:
1000:
Tecmint,,,:
/home/tecmint:
/bin/bash
使用’-i'选项将忽略大小写。
viewsource
print?
1
root@tecmint:
~#grep-iTECMINT/etc/passwd
2
3
tecmint:
x:
1000:
1000:
Tecmint,,,:
/home/tecmint:
/bin/bash
使用’-r'选项递归搜索所有自目录下包含字符串“127.0.0.1“.的行。
viewsource
print?
01
root@tecmint:
~#grep-r"127.0.0.1"/etc/
02
03
/etc/vlc/lua/http/.hosts:
127.0.0.1
04
/etc/speech-dispatcher/modules/ivona.conf:
#IvonaServerHost"127.0.0.1"
05
/etc/mysql/f:
bind-address =127.0.0.1
06
/etc/apache2/mods-available/status.conf:
Allowfrom127.0.0.1:
:
1
07
/etc/apache2/mods-available/ldap.conf:
Allowfrom127.0.0.1:
:
1
08
/etc/apache2/mods-available/info.conf:
Allowfrom127.0.0.1:
:
1
09
/etc/apache2/mods-available/proxy_balancer.conf:
# Allowfrom127.0.0.1:
:
1
10
/etc/security/access.conf:
#+:
root:
127.0.0.1
11
/etc/dhcp/dhclient.conf:
#prependdomain-name-servers127.0.0.1;
12
/etc/dhcp/dhclient.conf:
# optiondomain-name-servers127.0.0.1;
13
/etc/init/network-interface.conf:
ifconfiglo127.0.0.1up||true
14
/etc/java-6-openjdk/net.properties:
#localhost&127.0.0.1).
15
/etc/java-6-openjdk/net.properties:
#http.nonProxyHosts=localhost|127.0.0.1
16
/etc/java-6-openjdk/net.properties:
#localhost&127.0.0.1).
17
/etc/java-6-openjdk/net.properties:
#ftp.nonProxyHosts=localhost|127.0.0.1
18
/etc/hosts:
127.0.0.1 localhost
注意:
您还可以使用以下选项:
1.-w搜索单词(egrep-w‘word1|word2‘/path/to/file).
2.-c用于统计满足要求的行(i.e.,totalnumberoftimesthepatternmatched)(grep-c‘word‘/path/to/file).
3.–color彩色输出(grep–colorserver/etc/passwd).
王瑞平
翻译于26天前
5人顶
顶 翻译的不错哦!
23.命令:
man
‘man‘是系统帮助页。
Man提供命令所有选项及用法的在线文档。
几乎所有的命令都有它们的帮助页,例如:
viewsource
print?
01
root@tecmint:
~#manman
02
03
MAN
(1) Manualpagerutils MAN
(1)
04
05
NAME
06
man-aninterfacetotheon-linereferencemanuals
07
08
SYNOPSIS
09
man [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-m system[,...]] [-M path] [-Slist][-eextension][-i|-I]
10
[--regex|--wildcard][--names-only][-a][-u][--no-subpages][-Ppager][-rprompt][-7][-Eencoding][--no-hyphenation][--no-justification] [-p
11
string][-t][-T[device]][-H[browser]][-X[dpi]][-Z][[section]page...]...
12
man-k[aproposoptions]regexp...
13
man-K[-w|-W][-Slist][-i|-I][--regex][section]term...
14
man-f[whatisoptions]page...
15
man-l[-Cfile][-d][-D][--warnings[=warnings]][-Rencoding][-Llocale][-Ppager][-rprompt][-7][-Eencoding][-pstring][-t][-T[device]]
16
[-H[browser]][-X[dpi]][-Z]file...
17
man-w|-W[-Cfile][-d][-D]page...
18
man-c[-Cfile][-d][-D]page...
19
man[-hV]
上面是man命令的系统帮助页,类似的有cat和ls的帮助页。
注意:
系统帮助页是为了命令的使用和学习而设计的。
王瑞平
翻译于26天前
4人顶
顶 翻译的不错哦!
24.命令:
ps
ps命令给出正在运行的某个进程的状态,每个进程有特定的id成为PID。
viewsource
print?
1
root@tecmint:
~#ps
2
3
PIDTTY TIMECMD
4
4170pts/1 00:
00:
00bash
5
9628pts/1 00:
00:
00ps
使用‘-A‘选项可以列出所有的进程及其PID。
viewsource
print?
01
root@tecmint:
~#ps-A
02
03
PIDTTY TIMECMD
04
1?
00:
00:
01init
05
2?
00:
00:
00kthreadd
06
3?
00:
00:
01ksoftirqd/0
07
5?
00:
00:
00kworker/0:
0H
08
7?
00:
00:
00kworker/u:
0H
09
8?
00:
00:
00migration/0
10
9?
00:
00:
00rcu_bh
11
....
注意:
当你要知道有哪些进程在运行或者需要知道想杀死的进程PID时ps命令很管用。
你可以把它与‘grep‘合用来查询指定的输出结果,例如:
viewsource
print?
1
root@tecmint:
~#ps-A|grep-issh
2
3
1500?
00:
09:
58sshd
4
4317?
00:
00:
00sshd
ps命令与grep命令用管道线分割可以得到我们想要的结果。
王瑞平
翻译于26天前
2人顶
顶 翻译的不错哦!
25.命令:
kill
也许你从命令的名字已经猜出是做什么的了,kill是用来杀死已经无关紧要或者没有响应的进程.它是一个非常有用的命令,而不是非常非常有用.你可能很熟悉Windows下要杀死进程可能需要频繁重启机器因为一个在运行的进程大部分情况下不能够杀死,即使杀死了进程也需要重新启动操作系统才能生效.但在linux环境下,事情不是这样的.你可以杀死一个进程并且重启它而不是重启整个操作系统.
杀死一个进程需要知道进程的PID.
假设你想杀死已经没有响应的‘apache2'进程,运行如下命令:
viewsource
print?
1
root@tecmint:
~#ps-A|grep-iapache2
2
3
1285?
00:
00:
00apache2
搜索‘apache2'进程,找到PID并杀掉它.例如:
在本例中‘apache2'进程的PID是1285..
viewsource
print?
1
root@tecmint:
~#kill1285(tokilltheprocessapache2)
注意:
每次你重新运行一个进程或者启动系统,每个进程都会生成一个新的PID.你可以使用ps命令获得当前运行进程的PID.
另一个杀死进程的方法是:
viewsource
print?
1
root@tecmint:
~#pkillapache2
注意:
kill需要PID作为参数,pkill可以选择应用的方式,比如指定进程的所有者等.
王瑞平
翻译于26天前
1人顶
顶 翻译的不错哦!
26.命令:
whereis
whereis的作用是用来定位命令的二进制文件\资源\或者帮助页.举例来说,获得ls和kill命令的二进制文件/资源以及帮助页:
viewsource
print?
1
root@tecmint:
~#whereisls
2
3
ls:
/bin/ls/usr/share/man/man1/ls.1.gz
viewsource
print?
1
root@tecmint:
~#whereiskill
2
3
kill:
/bin/kill/usr/share/man/man2/kill.2.gz/usr/share/man/man1/kill.1.gz
注意:
当需要知道二进制文件保存位置时有用.
王瑞平
翻译于26天前
1人顶
顶 翻译的不错哦!
27.命令:
service
‘service‘命令控制服务的启动、停止和重启,它让你能够不重启整个系统就可以让配置生效以开启、停止或者重启某个服务。
在Ubuntu上启动apache2server:
viewsource
print?
1
root@tecmint:
~#serviceapache2start
2
3
*Startingwebserverapache2 apache2:
Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,using127.0.1.1forServerName
4
httpd(pid1285)alreadyrunning [OK]
重启apache2server:
viewsource
print?
1
root@tecmint:
~#serviceapache2restart
2
3
*Restartingwebserverapache2 apache2:
Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,using127.0.1.1forServerName
4
...waiting.apache2:
Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,using127.0.1.1forServerName [OK]
停止apache2server:
viewsource
print?
1
root@tecmint:
~#serviceapache2stop
2
3
*Stoppingwebserverapache2 apache2:
Couldnotreliablydeterminetheserver'sfullyqualifieddomainname,using127.0.1.1forServerName
4
...waiting [OK]
注意:
要想使用service命令,进程的脚本必须放在‘/etc/init.d‘,并且路径必须在指定的位置。
如果要运行“serviceapache2start”实际上实在执行“service/etc/init.d/apache2start”.
王瑞平
翻译于25天前
1人顶
顶 翻译的不错哦!
28.命令:
alias
alias是一个系统自建的shell命令,允许你为名字比较长的或者经常使用的命令指定别名。
我经常用‘ls-l‘命令,它有五个字符(包括空格)。
于是我为它创建了一个别名‘l'。
viewsource
print?
1
root@tecmint:
~#aliasl='ls-l'
试试它是否能用:
viewsource
print?
01
root@tecmint:
~#l
02
03
total36
04
drwxr-xr-x3tecminttecmint4096May1011:
14Binary
05
drwxr-xr-x3tecminttecmint4096May2111:
21Desktop
06
drwxr-xr-x2tecminttecmint4096May2115:
23Documents
07
drwxr-xr-x8tecminttecmint4096May2014:
56Downloads
08
drwxr-xr-x2tecminttecmint4096May 716:
58Music
09
drwxr-xr-x2tecminttecmint4096May2016:
17P