Linux中基本命令

Linux中基本命令

1、命令提示符介绍

一、命令权限

[root@localhost ~]#		#/root
[xinghan@localhost ~]$		#/home/xinghan

如上:[用户名@主机名 当前目录] #超级管理员权限 $普通权限shell

二、命令格式

命令 选项 参数 (三者之间要有空格,区分大小写)bash

command [-options] [args]

[args]:参数(多个参数之间用空格分隔)网络

命令格式验证:app

[root@localhost ~]# ls -a -l install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
[root@localhost ~]# ls -al install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
[root@localhost ~]# ls -al install.log install.log.syslog 
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
-rw-r--r--. 1 root root  9154 Oct  4  2015 install.log.syslog
[root@localhost ~]# ls -al install*
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log
-rw-r--r--. 1 root root  9154 Oct  4  2015 install.log.syslog
[root@localhost ~]# ls -al *.log
-rw-r--r--. 1 root root 41364 Feb  8  2017 install.log
[root@localhost ~]# ls -al *.log*
-rw-r--r--. 1 root root 41364 Feb  8  2017 install.log
-rw-r--r--. 1 root root  9154 Feb  8  2017 install.log.syslog

三、获取命令帮助

一、whatis 命令(若是不成功,则执行makewhatis)测试

二、使用help查看内建命令的帮助(enable查看内建命令)ui

三、man 命令:enter按行翻,空格按页翻;HOME/END键能够快速到首页/尾页(SecureCRT中无效);查找按 /要查找的内容,查找 下一个/上一个:按n/N;退出按q。spa

四、info 命令.net

五、命令--help命令行

查看内建命令:enablecode

示例:

[root@localhost ~]# whatis ls
ls                   (1)  - list directory contents
ls                   (1p)  - list directory contents
[root@localhost ~]# whatis date
date                 (1)  - print or set the system date and time
date                 (1p)  - write the date and time
[root@localhost ~]# help cd
cd: cd [-L|-P] [dir]
	Change the shell working directory.
[root@localhost ~]# help ls
-bash: help: no help topics match `ls'.  Try `help help' or `man -k ls' or `info ls'.

2、经常使用命令

一、目录文件相关操做

1.新增

建立目录:mkdir。

命令格式:mkdir 目录名 [目录1]

参数:-p:同时建立多层目录。

示例:

[root@localhost ~]# mkdir /home/demo/abc
mkdir: cannot create directory `/home/demo/abc': No such file or directory
[root@localhost ~]# mkdir /home/demo
[root@localhost ~]# cd /home/demo/
[root@localhost demo]# mkdir abc xyz
[root@localhost demo]# ls
abc  xyz
[root@localhost ~]# mkdir  -p /home/a/b/c      #一次性将 a/b/c所有建立出来

2.删除

删除目录或者文件:rm。

命令格式:rm -rf  目标

参数:-r递归删除、-f强制删除。

删除空目录:rmdir。

rmdir  目录

示例:

[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]# rm aaa
rm: cannot remove `aaa': Is a directory
[root@localhost home]# rm -r aaa         删除目录须要带  -r
rm: descend into directory `aaa‘?  不带-f会提示是否删除  输入y回车才删除,不输入y不删
[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]# rm -rf aaa    -f表示强制删除
[root@localhost home]# ls
demo  ds  xinghan  zs

3.修改

touch:建立空文件或者修改文件的时间戳。

命令格式:touch  文件名称

文件已存在会更改文件的时间戳,文件不存在会建立文件。

示例:

[root@localhost home]# cd /home/demo/
[root@localhost demo]# ls
abc  xyz
[root@localhost demo]# touch hello
[root@localhost demo]# ls
abc  hello  xyz
[root@localhost demo]# cd abc
[root@localhost abc]# ll install.log
-rw-r--r--. 1 root root 41364 Jan  1 23:45 install.log
[root@localhost abc]# date
Sun Jan  1 23:59:55 PST 2017
[root@localhost abc]# touch install.log
[root@localhost abc]# ll install.log
-rw-r--r--. 1 root root 41364 Jan  2 00:00 install.log

4.更名、移动

mv:用于移动一个目录,Linux中没有专门更名的命令,mv兼职更名。

命令格式:mv 源  目标

mv oldName newName

示例:

[root@localhost demo]# cd /home/demo/xyz/
[root@localhost xyz]# ls
abc
[root@localhost xyz]# mv abc /home/
[root@localhost xyz]# ls
[root@localhost xyz]# cd /home/
[root@localhost home]# ls
abc  demo  ds  xinghan  zs
[root@localhost home]# mv abc aaa         将abc更名为aaa
[root@localhost home]# ls
aaa  demo  ds  xinghan  zs
[root@localhost home]#

5.查看目录

alias:查看命令别名。

pwd (print name of current/working directory):查看当前目录的全路径。

ls:显示目录或文件,执行ls指令可列出目录的内容,包括文件和子目录的名称。

命令格式:ls [options] [file_or_dirs]

选项和参数:

-a:或--all下全部文件和目录(包括隐藏的)。

-l:使用详细格式列表。

-R或--recursive:递归处理,将指定目录下的全部文件及子目录一并处理。

-ld:显示指定的目录或文件的详细信息。

ls使用演示:

[root@localhost ~]# ls -l install.log
-rw-r--r--. 1 root root 41364 Oct  4  2015 install.log         大小单位为B字节
[root@localhost ~]# ls -lh install.log
-rw-r--r--. 1 root root 41K Oct  4  2015 install.log           大小单位为KB
[root@localhost ~]# ls -l /home/
drwxr-xr-x.  4 root  root  4096 Jan  1 23:30 demo
drwx------. 27 mengxb mengxb 4096 Oct  4  2015 ds
[root@localhost ~]# ls -ld /home/
drwxr-xr-x. 6 root root 4096 Jan  1 23:30 /home/
[root@localhost ~]# alias ll       #ll不是一个存在的命令,而是一个别名
alias ll='ls –l --color=auto‘
[root@localhost ~]# ls -R /home/     递归显示/home下的内容

6.查看文件

cat:不打开文件查看文件内容。

命令格式:cat [-AbeEnstTuv] [--help] [--version] fileName

选项参数:

-n或--number:由1开始对全部输出的行数编号。

-b或--number-nonblank:和-n 类似,只不过对于空白行不编号。

-s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行。

-v或--show-nonprinting。

示例:

cat -n textfile1 > textfile2 #把 textfile1 的档案内容加上行号后输入 textfile2 这个档案里
cat -b textfile1 textfile2 >> textfile3 #把 textfile1 和 textfile2 的档案内容加上行号(空白行不加)以后将内容附加到 textfile3 里。

7.切换

cd:切换目录命令。

命令格式:cd  目标目录

切换目录的时候可使用绝对路径也可使用相对路径。

绝对路径:以/开头的路径。

相对路径:相对当前位置的路。

“.”表示当前目录。“..”表示父目录。“-”表示前一个目录(相似电视遥控器上返回)。“~”表示当前用户home目录。

“~用户名”指定用户名对应的home目录/用户名(例如:~xinghan表示目录就是 /home/xinghan/)。

[root@localhost ~]# pwd
/root
[root@localhost ~]# cd /etc
[root@localhost etc]# cd
[root@localhost ~]# pwd
/root
[root@localhost ~]# su xinghan  #可经过useradd  xinghan添加用户xinghan
[xinghan@localhost root]$ pwd
/root
[xinghan@localhost root]$ cd
[xinghan@localhost ~]$ pwd
/home/xinghan
[xinghan@localhost ~]$ cd /etc
[xinghan@localhost etc]$ cd ~
[xinghan@localhost ~]$

8.复制

cp:拷贝目录,能够同时拷贝多个文件,文件名之间用空格隔开。

命令格式:cp 文件… 目标目录 拷贝文件…到目标

参数:-r/R:递归拷贝

示例:

[root@localhost ~]# cp install.log install.log.syslog  /home/demo/abc
[root@localhost ~]# ll /home/demo/abc/
-rw-r--r--. 1 root root 41364 Jan  1 23:45 install.log
-rw-r--r--. 1 root root  9154 Jan  1 23:45 install.log.syslog
[root@localhost ~]# cd /home/demo/abc/
[root@localhost  abc]# cp /root/install.log  /home/demo/abc  #太麻烦
[root@localhost  abc]# cp ~/install.log  .
[root@localhost ~]# cd /home/demo/
[root@localhost demo]# ls
abc  xyz
[root@localhost demo]# cp abc xyz   #提示cp: omitting directory `abc'
[root@localhost demo]# cp -r abc xyz
[root@localhost demo]# ls xyz
abc

二、系统相关命令

1.开关机

shutdown -h now:立马关机。

shutdown -h 20:25:系统会在今天20:25关机。

shutdown -h +10:十分钟后关机。

shutdown -r now:系统立马重启。

shutdown -r +10:系统十分钟后重启。

reboot:就是重启。

halt:关闭系统,等同于shutdown -h now 和 poweroff。

2.运行级别

Linux一个有7个运行级别,分别以下:

0:关机。

1:单用户。

2:无网络的多用户。

3:命令行模式。

4:未用。

5:GUI(图形桌面模式)。

6:重启

运行级别的切换:init。

命令格式:init 运行级别

查看当前运行级别可使用命令:who、runlevel。

who:显示当前运行级别以及系统当前时间。

命令格式:who -r

示例:

[root@localhost ~]# who -r
			run-level 5  2017-12-31 15:24

runlevel:使用时,直接输入当前命令,没有参数和选项,默认显示两个运行级别。

第一个表示当前级别以前使用的运行级别,若无则显示”N”。第二个表示当前运行级别。

示例:

[root@localhost ~]# runlevel
N 5

三、用户管理

用户帐号的管理工做主要涉及到用户帐号的添加、修改和删除。

1.新增用户

添加用户帐号就是在系统中建立一个新帐号,而后为新帐号分配用户号、用户组、主目录和登陆Shell等资源。刚添加的帐号是被锁定的,没法使用。

添加用户的命令:useradd。

命令格式:useradd [选项]  用户名

选项和参数:

-c:comment指定一段注释性描述。

-d:目录,指定用户主目录,若是此目录不存在,则同时使用-m选项,能够建立主目录。

-g:用户组,指定用户所属的用户组,即用户的主组。

-G:用户组,指定用户所属的附加组。

-s:Shell文件,指定用户的登陆Shell。

-u:用户号,指定用户的用户号,即UID。

增长用户帐号就是在/etc/passwd文件中为新用户增长一条记录,同时更新其余系统文件如:/etc/shadow、/etc/group等。

示例:

建立用户:
#useradd  tom
查看用户信息:
#id tom     ->显示UID/GID以及tom还属于哪些组
[root@localhost ~]# useradd tom
[root@localhost ~]# id tom
uid=500(tom) gid=500(tom) groups=500(tom)
建立用户,指定其UID为800:
[root@localhost ~]# useradd -u 800 jerry
[root@localhost ~]# id jerry
uid=800(jerry) gid=800(jerry) groups=800(jerry)

2.查看用户

id 查看单个用户的信息。

命令格式:id 用户名

新增用户中已有案例。

3.修改用户

修改用户帐号就是根据实际状况更改用户的有关属性,如用户号、主目录、用户组、登陆Shell等。修改已有用户的信息使用usermod命令。

命令格式:usermod  [选项]  用户名

选项和参数:

经常使用的选项包括-c、-d、-m、-g、-G、-s、-u等,这些选项的意义与useradd命令中的选项同样,能够为用户指定新的资源值。

另外,-l这个选项指定一个新的帐号,即将原来的用户名改成新的用户名。

4.用户口令

用户管理的一项重要内容是用户口令的管理。用户帐号刚建立时没有口令,可是被系统锁定,没法使用,必须为其指定口令后才可使用,即便是指定空口令。

指定和修改用户口令的Shell命令是:passwd。

超级用户能够为本身和其余用户指定口令,普通用户只能用它修改本身的口令。

命令格式:passwd [选项] 用户名

选项和参数:

-l:(lock)锁定口令,即禁用帐号。

-u:(unlock)口令解锁。

-d:(HOME_DIR)使帐号无口令(删除密码)。(此命令仅管理员有效)

示例:

修改密码。

#passwd

修改本身的密码,普通用户修改比较麻烦,须要使用高强度密码。

#passwd tom

修改tom的密码,管理员才能够修改其余人的密码,不须要使用高强度密码。

注:高强度密码不是够长就行!!密码中须要包含字母、数字、特殊符号、密码长度。

5.切换用户

su切换用户。

命令格式:su 目标用户

管理员切用户不须要密码,用户切管理员须要输入管理员密码。

在CentOS中(其余版本的Linux未测试)普通用户切换root用户只须要输入su回车后输入root密码便可切换到root用户的身份。

6.删除用户

删除用户使用命令:userdel。

命令格式:

userdel 用户名:用于删除指定的用户。

userdel -r 用户名:在删除指定用户的同时删除他的home目录(工做中不建议使用,一个用户离职后,用户能够删掉,可是他的工做文件极可能还有用)。

示例:

[root@localhost ~]# userdel alice
[root@localhost ~]# ls /home/
alice  demo  ds  jerry  xinghan  tom  zs
[root@localhost ~]# rm -rf /home/alice/
[root@localhost ~]# ls /home/
demo  ds  jerry  xinghan  tom  zs

四、用户组管理

每一个用户都有一个用户组,系统能够对一个用户组中的全部用户进行集中管理。不一样Linux系统对用户组的规定有所不一样,如Linux下的用户属于与它同名的用户组,这个用户组在建立用户时同时建立。

用户组的管理涉及用户组的添加、删除和修改,实际上就是对/etc/group文件的更新。

1.新增用户组

新增长用户组的命令为:groupadd。

命令格式:groupadd [选项] 用户组

选线和参数:

-g GID:指定新用户组的组标识号(GID)。

-o:通常与-g选项同时使用,表示新用户组的GID能够与系统已有用户组的GID相同。

示例:

新增用户组emp
#groupadd emp
新增用户组market,并指定标识号为8000
#groupadd –g  8000  market
将用户添加到附加组
#usermod –aG  market   tom   (a:append  G:附加组)
建立一个用户组与root用户组GID系统
# groupadd –g 0 –o testroot

2.删除用户组

删除用户组使用的命令为:groupdel。

命令格式:groupdel 组名

示例:

从系统中删除组group1

# groupdel group1

若是删除的用户组,已经被用户追加为附件组,对应的全部用户的该附件组会被撤销掉。

若是被删除的用户组,已经被用户指定为主组,则该用户组没法被删除。(能够理解为像Windows中文件被占用时不能被删除。)

3.查看用户组

查看用户所在用户组使用命令:groups。

命令格式:groups 用户名

若是不跟用户名,则查询的是当前用户所在的分组。

4.修改用户组

修改用户组使用的命令为:groupmod。

命令格式:groupmod  [选项]  用户组

选项和参数:

-g GID:为用户组指定新的组标识号。

-o:与-g选项同时使用,用户组的新GID能够与系统已有用户组的GID相同。

-n:新用户组,将用户组的名字改成新名字。

更名格式:groupmod -n newGroupName oldGroupName

示例:

1.将组group2的组标识号修改成102。
# groupmod -g 102 group2
2.将组group2的标识号改成10000,组名修改成group3。
# groupmod –g 10000 -n group3 group2

5.切换用户组

若是一个用户同时属于多个用户组,那么用户能够在用户组之间切换,以便具备其余用户组的权限。用户能够在登陆后,使用命令newgrp切换到其余用户组,这个命令的参数就是目的用户组。例如:

$ newgrp root

这条命令将当前用户切换到root用户组,前提条件是root用户组确实是该用户的主组或附加组,此时直接输入id后可直接查看到用户的当前组已被切换(但注意这里成为组内成员并不表明拥有了root权限,想像一下你的情书是否愿意让组员查看。)

[xinghan@CentOS ~]$ id
uid=500(xinghan) gid=0(root) 组=500(xinghan),0(root) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

上一篇:虚拟机:CentOS 7系统安装

下一篇:Linux基础之权限

相关文章
相关标签/搜索