Shell基本命令
Shell以其稳定、高效和灵活称为系统管理员的首选。下面将介绍Shell的基本命令,包括目录切换、查找并查看文件、查看用户信息等。
1、Shell简介
Shell是一个程序,它在用户和操作系统之间提供了一个面向行的可交互接口。用户在命令行中输入命令,运行在后台的shell把命令转换成指令码发给操作系统。
2、印刷约定
$:表示用户输入
#:表示正在以root身份执行命令
3、浏览你的硬盘
-- 进入根目录(cd命令)并查看根目录下的目录结构(ll命令)
csv-cbweb01-cbossweb%cd /
Directory: /
csv-cbweb01-cbossweb%ll
总用量 220
drwxr-xr-x 2 root root 4096 5月 5 2010 selinux/
drwxr-xr-x 2 root root 4096 5月 5 2010 mnt/
drwx------ 2 root root 16384 7月 30 2013 lost+found/
drwxr-xr-x 13 root root 4096 7月 30 2013 usr/
drwxr-xr-x 4 root root 4096 7月 30 2013 srv/
drwxr-xr-x 15 root root 4096 7月 30 2013 var/
drwxr-xr-x 3 root root 4096 7月 30 2013 opt/
drwxr-xr-x 4 root root 4096 7月 31 2013 home/
drwxr-xr-x 13 root root 4096 9月 10 2015 lib/
drwxr-xr-x 8 root root 12288 9月 10 2015 lib64/
drwxr-xr-x 2 root root 4096 9月 10 2015 bin/
drwxr-xr-x 3 root root 12288 9月 10 2015 sbin/
drwxr-xr-x 4 root root 4096 9月 10 2015 boot/
drwxr-xr-x 2 root root 4096 9月 11 2015 media/
drwxr-xr-x 18 1000 1000 4096 9月 16 2015 Python-2.7.10/
drwxr-xr-x 24 root root 4096 12月 21 01:31 ../
drwxr-xr-x 24 root root 4096 12月 21 01:31 ./
dr-xr-xr-x 164 root root 0 12月 21 09:31 proc/
drwxr-xr-x 12 root root 0 12月 21 09:31 sys/
drwxr-xr-x 16 root root 4160 12月 21 09:32 dev/
drwx------ 22 root root 4096 2月 18 10:42 root/
drwxr-xr-x 5 root root 4096 2月 18 11:05 app/
drwxr-xr-x 107 root root 12288 2月 18 11:05 etc/
drwxrwxrwt 1792 root root 102400 5月 27 12:30 tmp/
csv-cbweb01-cbossweb%cd /home
Directory: /home
csv-cbweb01-cbossweb%ll
总用量 16
drwxr-xr-x 5 bsm users 4096 7月 30 2013 bsm/
drwxr-xr-x 6 zjwg users 4096 7月 30 2013 zjwg/
drwxr-xr-x 4 root root 4096 7月 31 2013 ./
drwxr-xr-x 24 root root 4096 12月 21 01:31 ../
csv-cbweb01-cbossweb%
-- 用Tab制表符自动补全
4、查看目录和文件
-- 显示当前目录 pwd
csv-cbweb01-cbossweb%cd /usr/local/bin/
Directory: /usr/local/bin
csv-cbweb01-cbossweb%pwd
/usr/local/bin
-- 改变系统目录 cd
csv-cbweb01-cbossweb%cd /usr/local/bin/
Directory: /usr/local/bin
csv-cbweb01-cbossweb%pwd
/usr/local/bin
csv-cbweb01-cbossweb% cd ../
Directory: /usr/local
csv-cbweb01-cbossweb%pwd
/usr/local
-- 列出目录内容 ls和ls -l
csv-cbweb01-cbossweb%ls
csv-cbweb01-cbossweb%ls -l
-- 查看文件cat|more[filename]
-- cat命令会一次将所有内容全部显示在屏幕上。因此不常用
-- more命令会一页一页来显示内容。空格键翻页,enter键滚行,Q键退出
csv-cbweb01-cbossweb%more fbst
-- 阅读文件的开头和结尾
-- head用于显示文件的开头用-n参数指定显示的行数
-- tail用于显示文件的结尾,用法与head相同
5、更好的文本阅读工具:less
less的more非常相似,只是功能更加强大。less在屏幕底部显示一个冒号:等待用户的输入命令。空格向下翻页,B键向上翻页。使用"/"查找想要的内容,Q键退出
6、查找文件内容:grep
grep[options] pattern[file...]
-- 为了在文件day中查找包含un的行
grep un day
7、在指定范围内找到文件:find
find[OPTION] [path...][expression]
-- 在user/bin目录中查找zip命令
csv-cbweb01-cbossweb%cd /
Directory: /
csv-cbweb01-cbossweb%find /usr/
bin/ lib/ sbin/ [email protected]
games/ lib64/ share/ X11R6/
include/ local/ src/ x86_64-suse-linux/
csv-cbweb01-cbossweb%find /usr/bin/ -name zip -p
path perm print print0 printf prune
csv-cbweb01-cbossweb%find /usr/bin/ -name zip -print
/usr/bin/zip
csv-cbweb01-cbossweb%
--find命令还能够指定文件的类型,通过type参数来定位文件类型。
-type -b快设备文件 -c 字符设备文件 -d 目录文件
-f普通文件 -p命名管道 l符号链接
8、快速定位文件
-- 查看所有doc文件的路径
locate *.doc
9、查找特定程序:whereis
whereis命令主要用于查找程序文件
csv-cbweb01-cbossweb%whereis find
find: /usr/bin/find /usr/bin/X11/find /usr/share/man/man1p/find.1p.gz /usr/share/man/man1/find.1.gz
10、用户及版本信息查看
--who命令查看当前系统中有那些人登陆
csv-cbweb01-cbossweb%who
cbossweb pts/0 2016-05-27 12:28 (10.73.141.8)
cbossweb pts/1 2016-05-26 10:42 (10.73.141.43)
cbossweb pts/4 2016-05-26 16:26 (10.73.141.43)
-- 如果忘记了自己是以什么身份登陆到系统,用whoami
csv-cbweb01-cbossweb%whoami
cbossweb
-- uname -a 查看当前系统的版本信息
csv-cbweb01-cbossweb%uname -a
Linux csv-cbweb01 3.0.101-63-default #1 SMP Tue Jun 23 16:02:31 UTC 2015 (4b89d0c) x86_64 x86_64 x86_64 GNU/Linux
csv-cbweb01-cbossweb%uname -r
3.0.101-63-default
11、寻求帮助 -- man命令
man命令可以方便地获取某个命令的帮助信息
csv-cbweb01-cbossweb%man find
Man: 寻找所有匹配的手册页
* find (1)
find (1p)
Man: 您需要什么手册页?
...
12、获取命令简介 -- whatis和apropos
man手册中的长篇大论显得太罗嗦了,很多时候我们只是想了解一个命令是干嘛的,用whatis查看
csv-cbweb01-cbossweb%whatis find
find (1p) - find files
find (1) - search for files in a directory hierarchy
与之相反的命令是apropos,这个命令可以通过使用手册中反查到命令。例如,如果用户想要搜索一个文件,而又想不起来应该使用哪一个命令的时候,可以求助apropos
apparmor.d applydeltaiso apt
csv-cbweb01-cbossweb%apropos search
anemotaxis (6x) - directional search on a plane.
apropos (1) - search the manual page names and descriptions
ausearch (8) - a tool to query audit daemon logs
ausearch-expression (5) - audit search expression format
badblocks (8) - search a device for bad blocks
bsearch (3) - binary search of a sorted array
bsearch (3p) - binary search a sorted table
bzgrep (1) - search possibly bzip2 compressed files for a regular ...
Class::ISA (3pm) - report the search path for a class's ISA tree
CPANPLUS::Internals::Search (3pm) - (δ)
find (1) - search for files in a directory hierarchy
getgrnam (3p) - search group database for a name
getgrnam_r (3p) - search group database for a name
getpwnam (3p) - search user database for a name
getpwnam_r (3p) - search user database for a name
getpwuid (3p) - search user database for a user ID
getpwuid_r (3p) - search user database for a user ID
gnome-search-tool (1) - the GNOME Search Tool
grep (1p) - search a file for a pattern
grepjar (1) - search files in a jar file for a pattern
hcreate (3p) - manage hash search table
hdestroy (3p) - manage hash search table
...
-- 可以看到apropos命令将包含“search”的条目一并列出,用户能够从中找到自己想要的那个
13、总结
命令行是Linux的精华部分。所有的系统管理操作都可以在Shell下完成
有很多不同的Shell可供选择。目前Linux上使用最广泛的是BASH
可以使用命令行补全和通配符提高使用Shell的效率
pwd命令用于显示当前目录信息
cd命令在目录键切换,这是linux中使用最频繁的命令之一
ls命令提供了大量选项供用户查看目录内容
dir和vdir是ls命令的简化版
使用cat命令查看文件(全部文件内容)。more命令可以分页显示一个较长文本文件
使用head和tail命令显示一个文件头和文件尾,-n指定显示多少行
less命令提供了查看文件的更高级功能。man命令就是通过调用less显示帮助手册信息的。
grep程序时查找文件内容的利器
find命令可以按需查找某个特定文件
locate命令快速定位文件位置
whereis命令查找某个特定程序的所在位置
who查看当前系统中有那些人登陆
uname用于显示当前系统信息
whatis和apropos命令能够从man手册中提取简要信息
转载于:https://blog.51cto.com/aku28907/1783805