文章目录
命令的基本格式
命令提示符
[root@localhost ~]#
[]:这是提示符的分隔符号,没有特殊含义。
root:显示的是当前的登录用户, 目前使用的是root用户登录。
@:分隔符号,没有特殊含义。
localhost:当前系统的简写主机名(完整主机名是 localhost.localdomain)。
~:代表用户当前所在的目录,此例中用户当前所在的目录是家目录。
#:命令提示符。超级用户是#,普通用户是$
命令的基本格式
[root@localhost ~]# 命令 [选项] [参数]
选项:用于调整命令的功能的
参数:是命令的操作对象
一、基本命令
1.1 关机和重启
关机
shutdown -h new 立刻关机
shutdown -h 5 五分钟后关机
poweroff 立刻关机
重启
shutdown -r now 立刻重启
shutdown -r 5 五分钟后重启
reboot 立刻重启
1.2 帮助命令
--help命令
shutdown --help
ifconfig --help 查看网卡信息
--maven命令(命令说明书)
man shutdwon
二、目录操作命令
2.1 目录切换
格式:cd [选项] [参数]
选项:
-L:默认值,切换到指定目录
-P:切换到指向的物理位置目录
参数:可以是绝对路径或相对路径
命令:cd 目录
cd / 切换到根目录
cd /usr 切换到根目录下的usr 目录
cd ../ 切换到上一级目录或者cd ..
cd ~ 切换到home目录
cd - 切换到上一次访问的目录
2.2 目录查看ls
格式:ls [选项] [目录名]
选项
-a:显示所有文件
--color=when:高亮输出
-d:显示目录信息,而不是目录下的文件
-h:人性化显示文件大小
-i:显示文件的节点号
-l:长格式显示
示例
ls 查看当前目录下的所有目录和文件
ls -a 查看当前目录下的所有目录和文件包括隐藏文件
ls /dir 查看指定目录下的所有目录和文件
2.3 目录操作【增删改查】
创建目录:mkdir 目录
格式:mkdir [选项] 目录名
选项:
-p:递归建立所需目录
-m 权限:建立目录的同时设置目录的位置
示例
mkdir test 当前目录下创建test目录
mkdir /usr/test 指定目录下创建test目录
--------------------------------------------
删除目录或文件:rm [-rf] 目录
删除文件(f->force)
rm 文件 删除当前目录下的文件
rm -f 文件 删除当前目录下的文件(不询问)
删除目录(比操作文件多了个r,r->递归)
rm -r aaa 删除目录
rm -rf aaa 强制删除目录(不询问)
--------------------------------------------
目录修改:mv、cp
重命名目录
mv aaa bbb:将目录aaa改名为bbb
剪切目录
mv /usr/tmp/aaa /usr:将指定目录下的文件aaa剪切到/usr目录下
拷贝目录
cp -r 目录名称 目录拷贝的目标位置 -r代表递归
cp /usr/tmp/aaa /usr:将指定目录下的文件aaa拷贝到目录usr下面
--------------------------------------------
目录搜索
find 目录 属性 文件名称
find /usr/tmp -name 'a*':在指定目录下查找以a开头的目录或者文件
三、文件操作命令
3.1 文件的增删改查
新建文件:touch
格式:touch [选项] 文件名
选线
-a:更改存取时间为当前时间
-m:更改变动时间为当前时间
-t 日期时间:使用指定的日期时间
-r 参考文件或目录:把指定文件或目录的日期时间统统设成参考文件或目录的日期时间
示例
touch a.txt:当前目录下创建a文件
--------------------------------------------
删除文件:rm(和删除目录一样)
rm -rf 文件名:删除文件(不询问)
--------------------------------------------
修改文件:vi或vim
命令:vim 文件名:修改文件内容
vi指令的三种模式
命令行格式
无法编辑文件
按下:i或o或a进入编辑模式
输入:“:“进入底行模式”
编辑格式
可以编辑文件
按下:ESC进入命令行模式
底行模式
退出编辑::q
强制退出::q!
保存并退出::wq
--------------------------------------------
查询文件内容命令
cat:看最后一屏
格式:cat [选项] 文件名
选项:
-E:列出每行结尾的回车符$
-n:显示行号
-T:把Tab键用^|显示出来
-v:列出特殊符号字符
-A:相当于-vET选项的整合,列出所有隐藏符号
示例:cat a.txt:查看文件内容只显示最后一屏
more:百分比显示
格式:more [选项] 文件名
示例
more a.txt:可以查看文件的所有内容,并且显示出文件显示的百分比,“回车”向下一行,“空格”向下一页,“q”退出查看
less:翻页查看
格式:less [选项] 文件名
选项
-e:文件内容显示完毕后,自动退出
-f:强制显示文件
-g:不加亮显示搜索到的所有关键词,仅显示当前显示的关键字,以提高显示速度
-l:搜索时忽略大小写的差异
-N:每一行行首显示行号
-s:将连续多个空行压缩成一行显示
-S:在单行显示较长的内容,而不换行显示
-x数字:将TAB字符显示为指定个数的空格字符
示例
less a.txt:可以查看文件的所有内容,下箭头和上箭头实现翻页查看,“q”退出查看
tail:查看指定行数或者动态查看
tail -10 a.txt:查看文件的后十行内容,Ctrl+C退出查看
3.2 文件的权限修改
修改文件权限
命令格式:chmod [选项] 权限模式 文件或目录
选项
-R: 递归设置权限
--reference=RFILE
权限模式
格式:[用户身份][赋予方式][权限]
用户身份
u:文件的所有者才有
g:所在组
o:其他人
a:全部身份
赋予方式
+:给用户加入权限
-:减去用户权限
=:设置用户权限
权限
r:读取权限
w:写权限
x:执行权限
操作权限示例
# 添加组用户的写权限。
chmod g+w ./test.log
# 删除其他用户的所有权限。
chmod o= ./test.log
# 使得所有用户都没有写权限。
chmod a-w ./test.log
# 当前用户具有所有权限,组用户有读写权限,其他用户只 有读权限。
chmod u=rwx, g=rw, o=r ./test.log (等价的八进制数表示:chmod 754 ./test.log )
# 将目录以及目录下的文件都设置为所有用户拥有读写权限。注 意,使用'-R'选项一定要保留当前用户的执行和读取权限,否则 会报错!
chmod -R a=rw ./testdir/
# 根据其他文件的权限设置文件权限。
chmod --reference=./1.log ./test.log
文件和目录共同命令
rm命令
rm命令是最强大的删除命令,不仅可以删除文件,也可以删除目录
格式:rm [选项] 文件或目录
选项
-f:强制删除
-i:交互删除
-r:递归删除,可以删除目录
cp命令
cp命令用于赋值文件或目录
格式:cp [选项] 源文件 目标文件
选项
-d: 如果文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
-i: 询问,如果目标文件已经存在,则会询问是否覆盖
-p: 复制后目标文件保留源文件的属性(包括所有者、所有组、权限和时间)
-r: 递归复制,用于复制目录
-a: 相当于-dpr选项的集合
mv命令
mv命令是用来剪贴文件或目录
格式:mv [选项] 源文件 目标文件
选项
-f: 强制覆盖,如果目标文件已经存在,则不询问直接强制覆盖
-i: 交互模式,如果目标文件已经存在,则询问用户是否覆盖(默认选项)
-v:显示详细信息
stat命令
stat命令是查看文件详细的命令
格式:stat [选项] 文件名
选相
-f:显示文件系统状态而非文件状态
-t:以简洁方式输出信息
四、压缩文件操作
4.1 打包和压缩
各系统打包和压缩文件扩展名
Windows系统
压缩:zip/.rar
linux系统
打包:.tar
压缩:.gz
打包并压缩:.tar.gz
打包命令
格式:tar -zcvf 打包压缩后的文件名 要打包的文件
z:调用gzip压缩命令压缩
c:打包文件
v:显示运行过程
f:指定文件名
示例:tar -zcvf ab.txt a.txt b.txt
4.2 解压
格式:tar [-zxvf] 压缩文件
x:代表解压
示例:
将ab.tar解压到当前目录下:tar -zxvf ab.tar
将ab.tar解压到指定目录下:tar -zxvf ab.tar -C /usr
C代表着解压到指定的位置
五、查找命令
5.1 grep
grep命令的作用是在文件中提取和匹配符合条件的字符串行,是一种强大的文本搜索工具,能使用正则表达式搜索文本,并把匹配的行打印出来
命令格式:grep [选项] 搜索内容 文件名
选项:
-i:忽略大小写
-n:输出行号
-v:方向查找
-d动作:
-R:
--color=auto:关键字高亮显示
示例
ps -ef | grep sshd 查找指定ssh服务进程
ps -ef | grep sshd | grep -v grep 查找指定服务进程,排除gerp身
ps -ef | grep sshd -c 查找指定进程个数
5.2 find
find命令在目录结构中搜索文件,并对搜索结果执行指定的操作。
find默认搜索在当前目录及其子目录
格式:find [搜索路径] [选项]
选项
-name 范本样例:按照文件名
-iname 范本样例:按照文件名,忽略大小写
-inum inode编号:
-path 范本样例:查找符合条件路径
-regex 范本样例:正则表达式搜索
-iregex 范本样例:正则表达式搜索,忽略大小写
...
示例
find . -name "*.log" -ls 在当前目录查找以.log结尾的文件,并显示详细信息。
find /root/ -perm 600 查找/root/目录下权限为600的文件
find . -type f -name "*.log" 查找当目录,以.log结尾的普通文件
find . -type d | sort 查找当前所有目录并排序
find . -size +100M 查找当前目录大于100M的文件
5.3 locate
locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录(find 是去硬盘找),而是搜索一个数据库/var/lib/mlocate/mlocate.db,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件,为了避免这种情况,可以在使用locate之前,先使用updatedb命令手动更新数据库
命令格式:locate [选项] 文件名
选项
-d:指定资料库的路径。默认是/var/lib/mlocate/mlocate.db
-n:至多显示n个输出
示例
updatedb
locate /etc/sh 搜索etc目录下所有以sh开头的文件
locate pwd 查找和pwd相关的所有文件
5.4 whereis
whereis命令是定位可执行文件、源代码文件、帮助文件在文件系统中的位置。这些文件的属性应属于原始代码,二进制文件,或是帮助文件,也就是说whereis不能搜索普通文件
命令格式:whereis [选项] 参数
选项
-b:只查找二进制文件
-B 目录:只在设置的目录下查找二进制文件
-m:只查找说明文件
-M 目录:只在设置的目录下查找说明文件
-s:只查找原始代码文件
-S 目录:只在设置的目录下查找原始代码文件
-f:不显示文件名前的路径名称
示例
whereis ls 将和ls文件相关的文件都查找出来
5.5 which
which 也是搜索系统命令的命令,和whereis的区别在于,whereis命令可以在查找二进制命令的同时,查找帮助文档的位置,而which命令在查找到二进制命令的同时,如果这个命令有别名,则还可以查到别名命令。
命令格式:find [选项] [参数]
示例
which pwd 查找pwd命令所在路径
which java 查找path中java的路径
六、su、sudo操作
sudo是为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利,只需输入自己账号的密码即可
进入sudo配置文件命令
vi /etc/sudoer或者vi sudo
案例
允许hadoop用户以root身份执行各种应用命令,需要输入hadoop用户的密码
hadoop ALL=(ALL) ALL
案例
只允许hadoop用户以root身份执行ls 、cat命令,并且执行时候免输入密码
配置文件中: hadoop ALLNOPASSWD: /bin/ls,/bin/cat
七、系统服务
service iptables status --查看iptables服务的状态
service iptables start --开启iptables服务
service iptables stop --停止iptables服务
service iptables restart --重启iptables服务
chkconfig iptables off --关闭iptables服务的开机自启动
chkconfig iptables on --开启iptables服务的开机自启动
八、网络管理
8.1 主机名配置
[root@node1 ~]#vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=node1
8.2 IP地址配置
ip地址是计算机在互联网中唯一的地址编码,每台计算机如果需要接入网络和其他计算机进行数据通信,就必须配置唯一的ip地址
第一步:编辑网卡文件
[root@node1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 #网卡设备名
BOOTPROTO=static #[none|static|bootp|dhcp](引导时不使用协议|静态分配|BOOTP协议|DHCP协议)
HWADDR=00:15:5D:00:46:83 #MAC地址
UUID=5753e2ed-add1-4d1c-8a69-21a89647b050 # 唯一识别码
NM_CONTROLLED=yes #是否可以由Network Manager图形管理工具托管
ONBOOT=yes #[yes|no],是否随网络服务启动,如果配置"no",使用"ifconfig"命令时看不到该网卡
TYPE=Ethernet # 网络类型
IPADDR=192.168.1.10 #IP地址
NETMASK=255.255.255.0 #子网掩码
NETWORK=192.168.1.0 #网络地址
BROADCAST=192.168.1.255 #广播地址
GATEWAY=192.168.1.1 #网关地址
DNS1=202.109.14.5 #首选DNS服务地址
DNS2=219.141.136.10 #备用DNS服务地址
USERCTL=no #[yes|no](非root用户是否可以控制该设备)
第二步:查看DNS服务配置文件,里面的内容是系统自动生成的,一般不需要修改
vim /etc/resolv.conf
第三不:重启网络服务
service network resatrt 或/etc/init.d/network resatrt
- 注意
使用虚拟机克隆时,UUID可能复制的是一样的,导致网络服务启动失败,需要重置UUID值:
第一步:编辑网卡文件,删除UUID和MAC地址
第二步: 删除MAC地址和UUID绑定文件,rm -rf /etc/udev/rules.d/70-persistent-net.rules
第三部:重启系统
8.3 域名映射
/etc/hosts文件用于在通过主机名进行访问做IP地址解析用的,所以,想访问一个什么样的主机名,就需要把这个主机名和它对应的IP地址
[root@node1 ~]# vi /etc/hosts
#### 在最后加上
192.168.52.201 node1
192.168.52.202 node2
192.168.52.203 node3
九、定时任务指令ctrontab配置
crontab是Unix和Linux用于设置定时任务的指令。通过crontab指令,可以在固定间隔时间,执行指定的系统指令或shell脚本
crontab安装
yum install crontabs
服务操作说明
service crond start ##启动服务
service crond stop ##关闭服务
service crond restart ##重启服务
9.1 命令格式
十、其他命令
10.1 查看进程ps -ef
命令:ps -ef
10.2 结束进程:kill
命令:kill pid 或者 kill -9 pid(强制杀死进程)pid:进程号
10.3 网络通信命令
查看网卡信息:ifconfig
ifconfig被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置得到网卡信息,在网卡重启后机器重启后,配置就不存在了,
命令:ifconfig 或 ifconfig | more
查看与某台及其的连接情况
命令:ping ip
查看当前系统端口
命令:netstat -an
搜索指定端口
netstat -an | grep 8080
10.4 配置网络
命令:setup
10.5 重启网络
命令:service network restart
10.6 切换用户
命令:su -用户名
10.7 关闭防火墙
命令:chkconfig iptables off
或者
iptables -L
iptables -F
service iptables stop
10.8 修改文件权限
命令:chmod 777
10.9 清屏
命令:ctrl+I