您的位置:首页 > 运维架构 > Linux

Linux基本命令学习<一>

2013-09-15 10:19 495 查看
Linux基本命令学习<二>
Linux常用指令大全

Linux 命令学习网址: http://www.linuxsir.org/main/node/198

最新补充常用命令:
1.linux下压缩与解压缩命令及用法:(参考地址:http://www.21andy.com/blog/20060820/389.html
tar [-cxtzjvfpPN]
文件与目录 ....
参数:

-c :建立一个压缩文件的参数指令(create 的意思);

-x :解开一个压缩文件的参数指令!

-t :查看 tarfile 里面的文件!

特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

因为不可能同时压缩与解压缩。

-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?

-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?

-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!

-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!

   例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成

   『 tar -zcvPf tfile sfile』才对喔!

-p :使用原文件的原来属性(属性不会依据使用者而变)

-P :可以使用绝对路径来压缩!

-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!

--exclude FILE:在压缩的过程中,不要将 FILE 打包!

范例:
范例一:将整个 /etc
目录下的文件全部打包成为 /tmp/etc.tar
[root@linux ~]#

tar -cvf
/tmp/etc.tar /etc<==仅打包,不压缩!

[root@linux ~]#
tar -zcvf /tmp/etc.tar.gz
/etc
<==打包后,以 gzip 压缩

[root@linux ~]#
tar -jcvf /tmp/etc.tar.bz2
/etc
<==打包后,以 bzip2
压缩
# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar
来作为辨识。

# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~

# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~

# 上述指令在执行的时候,会显示一个警告讯息:

# 『tar: Removing leading `/" from member
names』那是关於绝对路径的特殊设定。
范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?

[root@linux ~]# tar -ztvf
/tmp/etc.tar.gz

# 由於我们使用 gzip
压缩,所以要查阅该 tar file 内的文件时,

# 就得要加上 z 这个参数了!这很重要的!

范例三:将
/tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下

[root@linux ~]# cd
/usr/local/src


[root@linux src]# tar -zxvf
/tmp/etc.tar.gz

#
在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,

# 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,

# 则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc

# 则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!

2.读写文件
1.
vi打开文件后,按i进入写入模式,回车下一行为:shift+enter,

按ESC后:wq 强制性写入文件并退出.即使文件没有被修改也强制写入,并更新文件的修改时间.:x
写入文件并退出 :q! Vi放弃所作修改而直接退到shell下。
3. Linux 查看系统版本信息命令
几种查看linux版本信息的方法:

几种查看linux版本信息的方法:

1. uname -a

2. cat /proc/version

3. cat /etc/issue

4. lsb_release -a

详解 lsb_release -a

1. 登录到服务器执行 lsb_release -a ,即可列出所有版本信息,例如:

[root@3.5.5Biz-46 ~]#
lsb_release -a

这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版
4. Linux 系统信息查看命令
rpm -qa
查看所有安装的软件包

更多参见:


http://soft.chinabyte.com/49/11100049.shtml
参考来源: http://linux.ccidnet.com/art/3067/20070313/1035613_1.html
5. grep 命令
grep(global search regular expression_r(RE)
and print out the
line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来

$ ls -l | grep '^a'

通过管道过滤ls
-l输出的内容,只显示以a开头的行.

$ grep 'test' d*

显示所有以d开头的文件中包含test的行。

$ grep 'test' aa bb cc

显示在aa,bb,cc文件中匹配test的行。

$ grep '[a-z]\{5\}' aa

显示所有包含每个字符串至少有5个连续小写字符的字符串的行。

$ grep 'w\(es\)t.*\1' aa

如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着另外一个es(\1),找到就显示该行。如果用egrep或grep
-E,就不用""号进行转义,直接写成'w(es)t.*\1'就可以了。
6. Linux 管道
利用管道

利用Linux所提供的管道符“|”将两个命令隔开,管道符左边命令的输出就会作为管道符右边命令的输入。连续使用管道意味着第一个命令的输出会作为
第二个命令的输入,第二个命令的输出又会作为第三个命令的输入,依此类推。下面来看看管道是如何在构造一条Linux命令中得到应用的。

1. 利用一个管道

# rpm -qa|grep licq

这条命令使用一个管道符“|”建立了一个管道。管道将rpm
-qa命令的输出(包括系统中所有安装的RPM包)作为grep命令的输入,从而列出带有licq字符的RPM包来。

2. 利用多个管道

# cat /etc/passwd | grep /bin/bash | wc -l

这条命令使用了两个管道,利用第一个管道将cat命令(显示passwd文件的内容)的输出送给grep命令,grep命令找出含有“/bin
/bash”的所有行;第二个管道将grep的输出送给wc命令,wc命令统计出输入中的行数。这个命令的功能在于找出系统中有多少个用户使用bash。

参考来源:http://hi.baidu.com/cassati/blog/item/cebf8437b398c4360a55a9d0.html
7. chmod 用法
# chmod -R 777 /home/oracle/test

详细介绍见:

http://blog.sina.com.cn/s/blog_4f9fc6e10100rndf.html
Linux系统信息查看命令大全
http://www.hackbase.com/tech/2008-10-17/41955.html

1.cat:显示文件
命令说明:将一个或多个文件内容显示在屏幕上。
语法格式:cat [-bEn][文件…]
参数说明:-b
在每一行(空行除外)的开头加上行号(从1开始计)。
-E 在每一行的最后加上符号“$”。
-n 在每一行的开头加上行号(从1开始计)。
[文件…] 要显示的文件名列表。

2.cd:切换目录
命令说明:切换当前目录。
语法格式:cd [目的目录]

参数说明:[目的目录]想要切换到的目录名,可以是相对路径,也可以是绝对路径。

3.chgrp:修改所属用户组
命令说明:修改文件或者目录所属的用户组。
语法格式:chgrp
[-fR][所属用户组][文件/目录名…]
chgrp
[-fR][--reference=<参考文件/目录>][文件/目录名…]
参数说明:-f 不显示错误信息。
-R
如果加上这一参数,那么指定目录下的所有文件和子目录都将被修改成为指定用户组。

--reference=<参考文件/目录>
把指定的文件或目录的所属用户组,全部设成和参考文件/目录所属的用户组。

4.chmod:修改权限
命令说明:修改文件/目录的权限。
语法格式:chmod
[-fR][<权限范围>+/-/=<权限设置>,…][文件/目录…]
chmod [-fR][数字代号][文件/目录…]
chmod
[-fR][--reference=<参考文件/目录>][文件/目录…]
参数说明:-f 不显示错误信息。
-R
如果加上这一参数,那么指定目录下的所有文件和子目录的权限都会被修改。

--reference=<参考文件/目录>
把指定的文件或目录的权限,全部设成和参考文件/目录相同的权限。

<权限范围>:u:文件/目录的所有者。
g:文件/目录所属的用户组。
o:其它用户。
a:全部用户,即ugo。

<权限设置>:r:读取权限,相应的数字代号为“4”。
w:写入权限,相应的数字代号为“2”。
x:执行权限,相应的数字代号为“1”。
-:不具备权限,相应的数字代号为“0”。

<权限范围>+<权限设置>:开启相应权限。

<权限范围>-<权限设置>:关闭相应权限。

<权限范围>=<权限设置>:设置相应权限。

5.chown:修改属主
命令说明:修改文件/目录的所有者以及所属用户组。

语法格式:chown[-fR][所有者.<所属用户组>][文件/目录…]
参数说明:-f不显示错误信息。
-R
如果加上这一参数,那么指定目录下的所有文件和子目录的所有者、所属用户组都将被修改。

chown -R oracle.oinstall /oracle
(设定目录所属的用户组和用户)

6.cp:文件拷贝
命令说明:用来拷贝文件或者目录。
语法格式:cp [-bfipR][-S
<备份字尾字符串>][源文件/目录…][目标文件/目录…]
cp [-bfipR][-S
<备份字尾字符串>][源文件/目录…][目的目录…]
参数说明:-b
当文件拷贝时遇到要删除、覆盖目标文件之前自动备份,备份文件名为原文件名+指定的备份字尾字符串。
-f 强行复制文件或目录,无论目标文件或目录是否存在。
-i 当文件拷贝时遇到要覆盖原有文件时,先询问用户。
-p
保留源文件或目录的属性(所有者、所属用户组、权限、时间)。
-P 保留源文件或目录的路径。
-R
如果加上这一参数,则指定目录下的所有文件及子目录都会被拷贝。

7.df:磁盘使用情况
命令说明:用来查看磁盘的文件系统以及使用情况。
语法格式:df [-ahkmT][文件/设备]
参数说明:-a 显示全部的文件系统。
-h 以更直观的方式显示使用情况。
-k 以K为单位统计。
-m 以M为单位统计。
-T 显示文件系统的类型。
[文件/设备]
磁盘是以设备文件表示,如果给出文件,那么就是指该文件所在的设备——磁盘。

8.du:目录/文件大小
命令说明:用来统计目录或者文件所占的磁盘空间大小。
语法格式:du
[-chkmsS][--exclude=<目录/文件>][--max-depth=<目录层数>][文件/目录]
参数说明:-c
不仅显示每个文件/目录的大小,还显示所有目录和文件的总和。
-h 以K、M、G为单位,提高输出信息的可读性。
-k 以K为单位统计。
-m 以M为单位统计。
-s 仅显示统计值。
-S
显示个别目录的大小时,不包括该目录的子目录的大小。

--exclude=<目录/文件> 略过指定的目录和文件。

--max-depth=<目录层数>
超过指定层数的目录后,予以忽略。

9.find:查找文件
命令说明:查找某个文件或者目录。
语法格式:find
[目录…][-amin<分钟>][-atime<24小时数>]
[-ctime<24小时数>]

[-cmin<分钟>
][-group<用户组名>][-mmin<分钟>][-mtime<24小时数>]

[-name<样式>][-print][-user<用户名>]

参数说明:-amin<分钟>
查找在指定时间被访问过的文件或目录,“+n分钟”代表n分钟之前,“-n分钟”代表n分钟之内。

-atime<小时>
查找在指定时间被访问过的文件或目录,“+n小时”代表n小时之前,“-n小时”代表n小时之内。

-cmin<分钟>
查找在指定时间内创建的文件或目录,“+n分钟”代表n分钟之前,“-n小时”代表n分钟之内。

-ctime<小时>
查找在指定时间内创建的文件或目录,“+n小时”代表n小时之前,“-n小时”代表n小时之内。

-group<用户组名> 查找属于该用户组的文件或目录。

-mmin<分钟>
查找在指定时间内被修改过的文件或目录,“+n分钟”代表n分钟之前,“-n小时”代表n分钟之内。

-mtime<小时>
查找在指定时间内被修改过的文件或目录,“+n小时”代表n小时之前,“-n小时”代表n小时之内。

-name<样式>
查找文件/目录名与样式相吻合的文件或目录。
-print 查找结果显示在屏幕上。

-user<用户名> 查找属于该用户的文件或目录。

10.grep:内容搜索
命令说明:在文件中查找符合条件的字符串。
语法格式:grep [-qrv][样式][文件/目录名…]
参数说明:-q 不显示中间过程的任何信息。
-r
如果使用该选项,则会查找指定目录下的所有文件和子目录中的内容。
-v 反义查找,也就是找不包含的“样式”指定的字符串的列。

11.gzip:压缩/解压缩

命令说明:压缩/解压缩文件,生成的压缩文件后缀名为“.gz”。
语法格式:gzip
[-dfl][-<压缩效率>][文件…]
gzip
[-dflr][-<压缩效率>][目录]
参数说明:-d 解压缩。
-f 强行压缩文件,直接覆盖同名文件。
-l
列出压缩文件的相关信息,包括压缩前后的文件大小、压缩率、压缩前的文件名等。
-r
若使用该选项,会将指定目录下所有的文件和子目录都压缩到该文件。

-<压缩效率>
是一个1~9的数值,数字越小、压缩越快,数字越大、压缩率越高,也就越慢。

12.ifconfig:设置网络设备
命令说明:显示网络设备的状态、设置网络设备的属性。
语法格式:ifconfig [网络设备][down
up][io_addr <I/O地址>][irq
<IRQ地址>]
[netmask
<子网掩码>] [IP地址]
参数说明:[网络设备]
说明要显示或设置的网络设备名,如eth0,第一张网卡。
down 将指定的网络设备停止工作。
up 将指定的网络设备重新启动到工作状态。
[io_addr
<I/O地址>] 设置该设备的I/O地址。
[irq
<IRQ地址>] 设置该设备的IRQ地址。
netmask
<子网掩码> 设置该设备的子网掩码。
[IP地址] 设置该设备的IP地址。

13.kill:终止进程
命令说明:将正在执行的程序(进程)终止。
语法格式:kill [-s
<消息名或编号>][程序]
kill [-i
<消息编号>]

参数说明:-i<消息编号>
列出消息名称,如果指定了消息编号则只显示该消息名称。

-s<消息名或编号> 指定要送出的消息。
[程序] 程序的进程号,可以用ps命令获得。

14.last:查看登录用户
命令说明:可以列出登录过系统的用户信息。
语法格式:last [-aRx][-n
<个数>][用户帐号名…][终端号…]
参数说明:-a
把登录系统用户所在主机的主机名或IP地址显示在最后一行。
-R 不显示登录系统用户所在的主机名或IP地址。
-x 显示系统关机、重新启动、改变运行等级等信息。
-n<个数>
指定要查看最近多少个登录用户。
[用户帐号名…] 指定查看某个用户帐号的登录记录。
[终端号…] 指定查看从某个终端登录的记录。

15.ls:列目录命令

命令说明:列出目录内容,包括文件和子目录名称,类似DOS下的dir。
语法格式:ls
[-acGhlrRu][--color=<颜色方案>][--show-control-chars][文件/目录]
参数说明:-a 显示所有文件和目录。
-c 按修改时间排序。
-G 不显示所属用户组信息。
-h 用K、M、G为单位显示文件或目录的大小。
-l 显示详细信息,包括文件大小、修改时间等信息。
-r 反向排序。
-R 列出指定目录下所有的文件及子目录。
-u 按最后访问时间排序。

--color=<颜色方案> 使用不同颜色来区分不同的内容。
--show-control-chars
遇到控制字符也显示,若有中文名称时可用此参数。

16.mkbootdisk:制作启动盘
命令说明:制作一张与当前系统版本相同的Linux启动软盘。
语法格式:mkbootdisk [--device
<设备名>][Kernel版本]

参数说明:--device<设备名>
指定软盘所在软驱的设备名,通常是/dev/fd0。
[Kernel版本] 当前系统的内核版本。

17.mkdir:建目录
命令说明:新建一子目录。
语法格式:mkdir [-p][-m
<目录属性>][目录名]
参数说明:-p
如果要建立的目录的上一级目录尚未建立,则先建立这一级目录。

-m<目录属性>
建立目录时,同时设置其目录权限,格式与chmod命令同。

18.more:分页显示
命令说明:一页一页地显示文件内容。
语法格式:more [文件]

19.mount:加载文件系统
命令说明:将文件系统加载到“/”文件系统中来。
语法格式:mount [-anrw][-t
<文件系统>][设备名称][载入点]
参数说明:-a 载入在/etc/fstab中描述的所有设备。
-n 载入信息不记录到日志文件/etc/mtab文件中。
-r 以只读的模式载入设备。
-w 以可读写模式载入设备。

-t<文件系统> 指定载入文件系统的类型,包括:
minix:Linux最早用的文件系统;
ext2:Linux最常用的文件系统;
msdos:MS-DOS的FAT16;
vfat:Windows下的FAT32;
nfs:网络文件系统;
iso9660:CDROM文件系统格式;
ntfs:Windows NT的文件系统
hpfs:OS/2的文件系统;
auto:自动检测文件系统类型。
[载入点]
其实就是一个目录,请建立一个空目录,该目录中的内容就是你载入的文件系统内容。

20.mv:移动目录
命令说明:将文件、目录移动到另一个目录中,或将其改名。
语法格式:mv [-bfiu][-S
<字符串>][源文件或目录][目标文件或目录]
参数说明:-b
当遇到要覆盖其它文件或目录时,将自动备份,备份文件名为原文件名加上-S参数指定的字符串,若未设置则加上“~”。
-f 出现重复情况,直接覆盖而不备份。
-i 当遇到要覆盖文件或目录时,总是询问用户。
-u 当要覆盖的文件或目录比源文件要新,则不覆盖目标文件。

-S<字符串> 指定备份文件名后要加上的字符串。

注:当目标文件或目录与源文件或目录在同一目录下时,其实就成为了改名命令。

21.passwd:设置密码
命令说明:设置用户帐号密码。
语法格式:passwd [-dlSu][用户名称]
参数说明:-d 删除密码,该参数只有root才能够使用。
-l 锁住帐号,该参数也只有root才能够使用。
-S 列出与密码相关的信息,该参数也只有root才能够使用。
-u 解开已上锁的帐号,该参数也只有root才能够使用。
[用户名称]
要设置密码的用户帐号,如果没有指定,则代表设置当前登录用户的密码。

22.ping:检查网络连通性
命令说明:可以用来检查在网络上的一台主机是否可连通。
语法格式:ping [-fn][-c
<连接次数>][-i
<间隔时间>][-I
<网络设备>]
参数说明:-f
产生ping风暴,会对网络带来严重负担,仅限root用户使用,可用来统计数据包的丢包、误码率。
-n 只输出数值,不尝试获取主机名。

-i<间隔时间>
设定2个Ping信息包发出的间隔时间,单位为秒。

-i<网络设备>
当系统有多个设备时,可以用该参数指定某一网络设备。

23.ps:进程状态
命令说明:查看当前运行的进程。
语法格式:ps
[-aeHuwx][--group<用户组名>][--tty<终端号>][--user<用户帐号名>]
参数说明:-a 显示所有终端下执行的进程。
-e 显示所有程序。
-H 显示树状结构,表达进程间的相互关系。
-u 以用户为主的格式来显示进行状态。
-w 用宽阔的显示模式。
-x 显示所有程序,不区分终端机。

--group<用户组名> 只显示指定用户组启动的进程。

--tty<终端号> 只显示在指定终端上启动的进程。

--user<用户帐号名> 只显示在指定用户启动的进程。

24.pwd:当前目录
命令说明:显示当前目录。
语法格式:pwd

25.reboot:重新启动
命令说明:重新启动Linux系统。
语法格式:reboot [-dn]
参数说明:-d
不将重新启动写入日志/var/tmp/wtmp。
-n 重新启动前不检查是否用未结束的程序,马上重启。

26.rm:删除文件/目录
命令说明:用来删除文件、目录。
语法格式:rm [-fr]
参数说明:-f 强制删除,不询问。
-r 递归处理,将会删除指定目录下的所有文件及子目录。

27.shutdown:关机
命令说明:关闭Linux系统及计算机。
语法格式:shutdown [-fFhr][-t
称数][时间][警告信息]
参数说明:-f 重新启动时不执行fsck检查磁盘。
-F 重新启动时执行fsck检查磁盘。
-h 关闭Linux系统后关机。
-r 关闭Linux系统后重新启动。
-t<秒数>
几秒钟后开始执行shutdown命令。
[时间]
以hh:mm或+mm方式来设定执行shutdown命令的时间,也可以用now表示现在就执行;
[警告信息]
可以通过它把要关机的信息发给登录在系统上的每一个用户。

28.su:切换用户帐号
命令说明:可以通过su让用户暂时换成另一个用户帐号登录。
语法格式:su [-fl][-c
<指令>][用户帐号]
参数说明:-f
用另一个用户帐号登录后,不去读该用户的.profile等启动设置文件。
-l
用户帐号改变后,也改变工作目录,就象该用户帐号新登录一样。
-c<指令>
执行完指定的指令后,就回到原来的用户帐号。

29.tar:备份命令

命令说明:它是在Linux/Unix系统中最常用的一个建立、还原备份文件的工具。
语法格式:tar [-Acdkvx][-f
<备份文件>][文件/目录…]
参数说明:-A 新增文件到已存在的备份文件中。
-c 新建备份文件。
-d 比较备份文件中的与当前目录下的文件之间的差异。
-k 解开德份文件时,不覆盖已有件。
-v 显示命令执行的过程。
-x 还原备份文件中的内容。

-f<备份文件> 指令备份文件名。

30.umount:卸载文件系统
命令说明:用来将mount载入的文件系统卸载出去。
语法格式:umount [-ar][-t
<文件系统类型>][文件系统]
参数说明:-a
卸载/etc/mtab中记录的所有已载入文件系统。
-r 若卸载失败,则重新尝试将其mount成为只读模式。

-t<文件系统类型> 仅卸载指定类型的文件系统。
[文件系统] 文件系统mount时的载入点。
[b]31.
linux查看端口命令
[/b]

netstat -an 查看网络端口
lsof -i :port,使用lsof -i
:port就能看见所指定端口运行的程序,同时还有当前连接。
nmap 端口扫描
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: