系统管理-01 Linux系统命令精讲

1、linux命令的分类
内部命令: 属于Shell解释器的一部分
外部命令:独立于Shell解释器之外的程序
===========
问题:怎么查看一个命令是内部还是外部命令?
[root@localhost ~]# type cd
cd is a shell builtin //cd 是一个shell内部命令
[root@localhost ~]# type ifconfig
ifconfig is /sbin/ifconfig //ifconfig是一个外部命令
--------------------------------------------------------
2、Linux命令的格式
Linux命令的通用格式:
命令字 [选项] [参数]
选项: 用于调节命令的具体功能
"-" 引导短格式选项,例如 "ls -a"
"--" 引导长格式选项,例如 "ls --help"
注意:多个短格式选项可以合并写
例如:ls -alh
但是多个长格式选项,不能合并写,只能分开!
参数: 命令的对象,如文件、目录名等
例如:
[root@localhost ~]# ls -lha /home
ls 命令字
-lha 选项
/home 参数
-----------------------------------------------------------
3、命令快捷键
tab键:自动补齐文件名,命令等;按两次tab键,系统将输出
可用的名称列表
反斜杠"\": 强制换行
ctrl+U: 快速删除当前光标处之前的所有字符
ctrl+K: 快速删除当前光标处之后的所有字符
ctrl+y: 粘贴刚才所删除的字符
ctrl+L: 快速清空当前屏幕中的显示内容
ctrl+C: 取消当前命令行的编辑
ctrl+D: 从shell提示中注销并关闭,类似输入exit回车
ctrl+L: 清屏
ctrl+a: 把光标移动到行首
ctrl+e: 把光标移动到行尾
ctrl+z:转入后台运行
Ctrl + r 在历史命令中查找 (这个非常好用,输入关键字就调出以前的命令了)
这个命令我强烈推荐,有时history比较多时,想找一个比较复杂的,直接在这里,shell会自动查找并调用,
方便极了
==================================
4、help命令
作用:
  内部帮助命令,查看bash内部命令的帮助
用法:
  help 内部命令字
例子:
[root@localhost ~]# help cd
命令的"--help"选项
作用:使用于大多数外部命令
用法: 命令字 --help
例子:
[root@localhost ~]# ls --help


---------------------------------------------------------
5、man命令
作用:man命令用来提供在线帮助,使用权限是所有用户。在Linux系统中存储着一部联机使用的手册,以供用
户在终端上查找。使用man命令可以调阅其中的帮助信息,非常方便和实用。
用法: man 命令名称
man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] [-Mpath] [-P pager] [-S section_list]
[section] name ...
例子:
[root@localhost ~]# man -f man
man (1) - format and display the on-line manual pages
man (1p) - display system documentation
man (7) - macros to format man pages
man.config [man] (5) - configuration data for man
man [manpath] (1) - format and display the on-line manual pages
man-pages (7) - conventions for writing Linux man pages
参数
-C config_file:指定设定文件man.conf,缺省值是/etc/man.conf。
[root@localhost ~]# man 1 man
[root@localhost ~]# man 7 man
代号 代表�热�
1 使用者在shell中可以操作的指令或可执行档
2 系�y核心可呼叫的函数与工具等
3 一些常用的函数(function)与函数库(library),大部分是C的函数库(libc)
4 装置档案的说明,通常在/dev下的档案
5 设定档或者是某些档案的格式
6 游戏(games)
7 惯例与协定等,例如Linux档案系统、网络协定、ASCII code等等的�f明
8 系�y管理�T可用的管理指令
9 跟kernel有关的文件
--------------------------------------------------------------
由于手册页man page是用less程序来看的(可以方便地使屏幕上翻和下翻), 所以在man page里可以使用less的
所有选项。
less中比较重要的功能键有:
[q] 退出;
[Enter] 一行行地下翻;
[Space] 一页页地下翻;
[b] 上翻一页;
[/] 后跟一个字符串和[Enter]来查找字符串;
[n] 发现上一次查找的下一个匹配。
=============================================
6、ls命令
作用:列出目标目录中所有的子目录和文件。
命令格式:
ls [选项] [目录名]
-a, �Call 列出目录下的所有文件,包括以 . 开头的隐含文件
-A 同-a,但不列出“.”(表示当前目录)和“..”(表示当前目录的父目录)。
-d, �Cdirectory 将目录象文件一样显示,而不是显示其下的文件。
-h, �Chuman-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G)
-i, �Cinode 印出每个文件的 inode 号
-r, �Creverse 依相反次序排列
-R, �Crecursive 同时列出所有子目录层
例子:
[root@localhost ~]# ls -lhR /etc


===========================================
[root@CentOS6-node1 ~]# stat anaconda-ks.cfg
File: "anaconda-ks.cfg"
Size: 2185 Blocks: 8 IO Block: 4096 普通文件
Device: fd00h/64768d Inode: 2237865 Links: 1
Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2015-12-22 09:12:41.504008318 +0800
Modify: 2014-07-31 17:44:12.335998426 +0800
Change: 2014-07-31 17:44:24.270998411 +0800


atime: 文件访问时间,比如你读了某个文件
mtime: 文件修改时间, 比如你对文件做了编辑操作
ctime: 文件状态时间,比如:更改文件的权限


=============================================
白色(黑色):一般文件
蓝色:目录
绿色:可执行程序
黄颜色: 设备相关文件
红色: 压缩文件
紫红色: 图片文件
==========================================


7、du
作用: 查看文件占用磁盘空间的大小
使用方法: du [选项] 参数
选项:
-a : 查看参数下所有文件所占磁盘空间的大小
-s : 只查看参数本身所占磁盘空间的总大小
-h : 以更人性化的方式显示文件的大小比如:(K M G等)
命令案例:
[root@CentOS6-node1 ~]# du -ah /etc
[root@CentOS6-node1 ~]# du -sh /etc


---------------------------------------------------------


8、touch
作用:创建测试用空文件,修改文件时间戳到当前时间。
使用方法: touch 参数
案例:
[root@CentOS6-node1 ~]# touch abc.txt
[root@CentOS6-node1 ~]# stat anaconda-ks.cfg
[root@CentOS6-node1 ~]# touch anaconda-ks.cfg
[root@CentOS6-node1 ~]# stat anaconda-ks.cfg


---------------------------------------------------------


9、mkdir
作用: 创建空的文件夹
使用方法: mkdir [选项] 参数
-p : 递归创建多个子目录
-m : 创建时忽略系统默认的umask值,直接指定目录的权限。
-v : 给出创建目录的详细过程。
案例:
[root@CentOS6-node1 ~]# mkdir aaa bbb ccc
[root@CentOS6-node1 ~]# ls ./
[root@CentOS6-node1 ~]# mkdir -pv 11/22/33/44/
[root@CentOS6-node1 ~]# mkdir -m 777 changchun
[root@CentOS6-node1 ~]# ls -ld changchun/
drwxrwxrwx. 2 root root 4096 12月 22 10:35 changchun/


---------------------------------------------------------


10、cp命令
作用:将源文件复制至目标文件,或将多个源文件复制至目标目录。
用法:cp [选项]... 源文件... 目标录
常用选项:
-a, --archive 等于-dR --preserve=all
--backup[=CONTROL 为每个已存在的目标文件创建备份
-d 等于--no-dereference --preserve=links
-f, --force 如果目标文件无法打开则将其移除并重试(当 -n 选项存在时则不需再选此项)
-i, --interactive 覆盖前询问(使前面的 -n 选项失效)
-H 跟随源文件中的命令行符号链接
-l, --link 链接文件而不复制
-L, --dereference 总是跟随符号链接
-n, --no-clobber 不要覆盖已存在的文件(使前面的 -i 选项失效)
-P, --no-dereference 不跟随源文件中的符号链接
-p 等于--preserve=模式,所有权,时间戳
--preserve[=属性列表 保持指定的属性(默认:模式,所有权,时间戳),如果
可能保持附加属性:环境、链接、xattr 等
-c same as --preserve=context
--sno-preserve=属性列表 不保留指定的文件属性
--parents 复制前在目标目录创建来源文件路径中的所有目录
-R, -r, --recursive 递归复制目录及其子目录内的所有内容
-s, --symbolic-link 只创建符号链接而不复制文件
练习案例:
[root@localhost ~]# mkdir -pv /aaa/{a,b,c}
mkdir: 已创建目录 "/aaa"
mkdir: 已创建目录 "/aaa/a"
mkdir: 已创建目录 "/aaa/b"
mkdir: 已创建目录 "/aaa/c"
[root@localhost ~]# touch /aaa/{1..3}.txt
[root@localhost ~]# mkdir /bbb
[root@localhost ~]# ls /bbb/
[root@localhost ~]# cp /aaa/*.txt /bbb
[root@localhost ~]# ls /bbb/
1.txt 2.txt 3.txt
[root@localhost ~]# unalias cp //取消cp命令的别名
[root@localhost ~]# cp -rpf /aaa/* /bbb/
[root@localhost ~]# ls /bbb/
1.txt 2.txt 3.txt a b c
---------------------------------------------------------


11、rm命令
作用:删除 (unlink) 文件。
用法:rm [选项]... 文件...
常用选项:
-f, --force 强制删除。忽略不存在的文件,不提示确认
-i 在删除前需要确认
-I 在删除超过三个文件或者递归删除前要求确认。此选项比-i 提
示内容更少,但同样可以阻止大多数错误发生
--interactive[=WHEN] 根据指定的WHEN 进行确认提示:never,once (-I),
或者always (-i)。如果此参数不加WHEN 则总是提示
--one-file-system 递归删除一个层级时,跳过所有不符合命令行参
数的文件系统上的文件
--no-preserve-roo 不特殊对待"/"
--preserve-root 不允许删除"/"(默认)
-r, -R, --recursive 递归删除目录及其内容
-v, --verbose 详细显示进行的步骤
--help 显示此帮助信息并退出
--version 显示版本信息并退出
默认时,rm 不会删除目录。使用--recursive(-r 或-R)选项可删除每个给定
的目录,以及其下所有的内容。
要删除第一个字符为"-"的文件 (例如"-foo"),请使用以下方法之一:
rm -- -foo
rm ./-foo
请注意,如果使用rm 来删除文件,通常仍可以将该文件恢复原状。如果想保证
该文件的内容无法还原,请考虑使用shred。
试验案例:
[root@localhost ~]# ls /bbb/
1.txt 2.txt 3.txt a b c
[root@localhost ~]# rm -rf /bbb/*
[root@localhost ~]# ls /bbb/
注意: rm -rf 极度危险,生产环境中请慎重使用!!!
----------------------------------------------------


12、mv命令
作用:将源文件重命名为目标文件,或将源文件移动至指定目录。
用法:mv [选项]... 源文件... 目录
常用选项:
-b 类似--backup 但不接受参数
-f, --force 覆盖前不询问
-i, --interactive 覆盖前询问
-n, --no-clobber 不覆盖已存在文件
如果您指定了-i、-f、-n 中的多个,仅最后一个生效。
--strip-trailing-slashes 去掉每个源文件参数尾部的斜线
-S, --suffix=SUFFIX 替换常用的备份文件后缀
-t, --target-directory=DIRECTORY 将所有参数指定的源文件或目录
移动至 指定目录
-T, --no-target-directory 将目标文件视作普通文件处理
-u, --update 只在源文件文件比目标文件新,或目标文件
不存在时才进行移动
-v, --verbose 详细显示进行的步骤
--help 显示此帮助信息并退出
--version 显示版本信息并退出
操作案例:
[root@localhost ~]# ls /bbb/
[root@localhost ~]# touch /bbb/nihao.txt
[root@localhost ~]# ls /bbb/
nihao.txt
[root@localhost ~]# ls /aaa/
1.txt 2.txt 3.txt a b c
[root@localhost ~]# mv /bbb/nihao.txt /aaa/
[root@localhost ~]# ls /bbb/
[root@localhost ~]# ls /aaa/
1.txt 2.txt 3.txt a b c nihao.txt
===================================================


13、which
作用:查找环境变量中的文件
用法:which 命令|文件
常用选项:
-a 查找全部内容,而非第一个文件
-n <文件名长度>  指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
-p <文件名长度>  与-n参数相同,但此处的<文件名长度>包括了文件的路径。
-w  指定输出时栏位的宽度。
-V  显示版本信息。
环境变量搜索路径查看方式:
[root@localhost ~]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
试验案例:
[root@localhost ~]# which ifconfig
/sbin/ifconfig
[root@localhost ~]# which cd
/usr/bin/which: no cd in (/usr/lib64/qt3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
================================================


14、find命令
详细用法请参阅本网站以下路径
find命令详解一:http://www.benet.wang/%E7%B3%BB%E7%BB%9F%E7%AE%A1%E7%90%86/94.html
find命令详解二:http://www.benet.wang/%E7%B3%BB%E7%BB%9F%E7%AE%A1%E7%90%86/95.html
find命令详解三:http://www.benet.wang/%E7%B3%BB%E7%BB%9F%E7%AE%A1%E7%90%86/96.html



转载分享请注明原文地址(幽幽林studio):http://www.benet.wang/Linux系统管理/161.html
本文来源:http://www.benet.wang/Linux系统管理/161.html

你可能感兴趣的:(linux,命令,通用)