Linux常用命令
一 、须知
起始符:[root@localhost~]
符号
说明
root
当前登录用户
localhost
主机名
~
当前所在目录(家目录),超级用户登陆时所在目录为/root,普通用户为/home/username
#
超级用户的提示符(普通用户的提示符是$)
目录或文件的详细信息说明
-rw-r--r--. 1 root devmind 24772 1月 14 18:18 anaconda-ks.cfg
选项
说明
-
文件类型 (-文件,d目录,l软链接文件,块设备文件,字符设备文件、套接字文件和管道文件)
rw-
u所有者的权限( r读,w写,x执行)
r--
g所属组的权限
r--
o其他用户的权限
.
ACL权限
1
引用计数(表示文件修改的次数)
root
文件或目录的所有者
devmind
文件或目录所属的组
24772
文件或目录大小(默认单位)
1月 14 18:18
表示文件最后一次修改的时间
anaconda-ks.cfg
文件或目录名
linux中的通配符
通配符
说明
*
匹配任意内容
?
匹配任意字符
[]
匹配任意一个中括号内的字符
命令基本格式:命令 [选项] [参数]
个别命令使用不遵循此格式
当有多个选项时可以写在一起
简化选项与完整选项:-a 等于 - -all
二 、文件处理命令
查询目录中的内容:ls [选项] [目录或文件]
选项
说明
-a
显示所有文件,包括隐藏文件
-l
显示详细信息
-d
查看目录属性
-h
人性化显示文件大小
-i
显示inode(文件或目录id)
创建目录:mkdir [选项] [目录名]
选项
说明
-p
递归创建目录
切换目录:cd [目录]
简化
说明
cd ~
进入当前目录的家目录
cd
进入当前目录的家目录
cd -
进入上次目录
cd ..
进入上一级目录
打印工作目录:pwd
删除目录:rm [选项] [目录名或文件]
选项
说明
-r
删除目录(多级目录时会询问是否删除)
-f
强制删除
复制:cp [选项] [目录名]
选项
说明
-r
复制目录
-p
连带文件属性复制
-d
若原文件是链接文件,则复制链接属性
-a
相当于-pdr
剪切(重命名):mv [原文件或目录] [目标目录]
三 、文件搜索命令
文件搜索命令:locate 文件名(只能按文件名搜索)
特点:在后台数据库中按文件名搜索,搜索速度更快
后台数据库:/var/lib/mlocate(不是实时同步的,每天更新)
更新数据库:updatedb
搜索规则的配置文件:/etc/updated.conf
命令搜索命令whereis [选项] [参数]
搜索命令所在路径及帮助文档所在的位置
选项
说明
-b
只查找可执行文件
-m
只查找帮助文件
命令搜索命令which [参数]
查看命令所在位置和命令的别名(不能查看Linux内置命令)
PATH环境变量
echo $PATH
文件搜索命令find [搜索范围] [搜索条件]
例如:find / -name install.log
find / -iname install.log 不区分大小写搜索
find / -user root 按照所有者搜索
find / -nouser 搜索没有所用者的文件
find /root -size 25k 查找文件大小为25k的文件
-25 小于25kb的文件
25 等于25kb的文件
+25 大于25k的文件
find . -inum 262422 查找i节点时262422的文件
find /etc -size +20k -a -size -50k 查找大于20kb并且小于50kb的文件
-a and 逻辑与
-o or 逻辑或
find /etc -size +25k -a -size -50k -exec ls -lh {} \;
查找大于20kb并且小于50kb的文件,然后显示其详细信息
find /var/log/ -mtime +10 查找十天前修改的文件
-10 10天内修改的文件
10 10天当天修改的文件
+10 10天前修改的文件
atime 文件访问时间
ctime 文件属性
mtime 修改文件内容
字符串搜索命令grep
精确匹配
cat dict.txt | grep -w '汽车'
模糊匹配
cat dict.txt | grep '汽车'
四 、文件搜索命令
五、系统目录
目录
说明
root
存放root用户的相关文件
home
存放普通用户的相关文件
bin
存放常用命令的目录
etc
存放配置相关的文件
sbin
要具有一定权限才可以使用的命令
mnt
默认挂载光驱和软驱的目录
var
存放经常变化的文件
boot
存放引导相关的文件
usr
默认安装文件的目录
六、用户管理
添加用户/删除用户
添加命令:useradd 用户名
例子1:useradd hadoop
例子2:useradd -g hadoopgroup hadoopuser
删除命令:userdel 用户名 / userdel -r 用户名(删除用户及用户主目录)
例子:userdel hadoop / userdel -r hadoop
设置密码
命令:passwd 用户名
添加组
添加组:groupadd policeman
更改文件所属者和所属组
chown -R hadoop:hadoop filename
chown hadoop filename :改变文件的拥有者为hadoop
chgrp root filename :改变文件所属的组为root
更改文件的权限
chmod 改变文件或目录的权限
chmod 755 abc :赋予abc权限rwxr-xr-x-
chmod u-x , g+w filename 给文件去除用户执行的权限,增加组谢的权限
改变某个用户所属的组
usermod -g 组名 用户名
七、其他
1. 指定运行级别
命令:init[0123456]
运行级别:
0:关机
1:单用户
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别时3和5,要修改默认的运行级别可以修改文件/etc/inittab 的id:5:initdefault:这一行中的数字
2.用户、组管理
添加组:groupadd policeman
查看所有的组:cat /etc/group
3.防火墙
centos7.0(默认是使用firewall作为防火墙,如若未改为iptables防火墙,使用以下命令查看和关闭防火墙)
查看防火墙状态:firewall-cmd --state
关闭防火墙:systemctl stop firewalld.service
开启防火墙:systemctl start firewalld.service
重启防火墙:firewall-cmd --reload
开启5601端口:firewall-cmd --permanent --zone=public --add-port=5601/tcp
4.查看端口
netstat -antup | grep 9092
ps -nlt | grep nifi -- 注意使用什么用户查看到的结果不一样
5.远程拷贝
scp -rp file [user]@[ip]:path
6.查看磁盘容量使用情况
df -h
7.查看文件内特殊字符
head user_watch_pref.sml | less
8.替换(^A由ctrl+v+a打出来的,' '里面的空是由ctrl+v+i打出来的)
head user_watch_pref.sml | tr '^A' ' '
9.下载
wget url
10.配置环境变量
vim ~/.bashrc
source ~/.bashrc
vi /etc/profile
source /etc/profile
11.查看文件大小
du -sh 查看当前文件夹大小
12.格式化查看数据
head lcs_input.data | column -t
13.查内存大小
free -h
八、案例
1. [root@slave2 mr_base]# head The_Man_of_Property.txt | ./map.py
-bash: ./map.py: /root/anaconda3/bin/python3^M: bad interpreter: No such file or directory
分析:1.1 执行权限问题:chmod +x map.py 赋予执行权限
1.2 python文件格式错误:在vi编辑下,输入:set ff或者:set fileformat,可以查看当前文件的格式(dos或者unix)
修改为unix格式,:set ff=unix 或:set fileformat=unix