经常使用虚拟机,也会连接远程linux系统的测试服务器,但是一些命令不经常用就会忘记,每次要用的时候又要重新找资料查,比较麻烦,就打算把平时用到的命令都记录下来,以后要用就翻自己的记录,这样也查的更快了。准备不定期更新,遇到什么要用的命令就写下来,做个备份。
1、查看文件大小
显示当前文件夹下所有文件的大小及名称
du -sh *
显示目录和目录下子目录和文件占用磁盘空间的大小
du -ha 文件夹名称
说明:df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。
2、centos7系统重启网卡
重启网卡命令(修改网络配置后,或者无法联网时)
service network restart
如果重启网卡失败则关闭网卡管理器,再重新启动
systemctl stop NetworkManager
systemctl start NetworkManager
systemctl restart NetworkManager
3、查看文件安装位置
命令:whereis 软件名
[root@localhost ~] whereis eclipse
eclipse: /usr/bin/eclipse
4、CentOs7 打开关闭防火墙
启动: systems start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld #(显示的消息更详细)
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
显示状态: firewall-cmd --state #(仅显示当前防火墙是否在运行)
5、命令查看你当前的linux系统内核版本
uname -r
centos版本
3.10.0-693.el7.x86_64
6、Centos出现-bash: unzip: command not found的解决办法
利用unzip命令解压缩的时候,出现-bash: unzip: command not found的错误。
unzip命令没有找到,其原因肯定是没有安装unzip。
利用一句命令就可以解决了。
命令是:
yum install -y unzip zip
7、查看内网以及外网IP
外网ip:两种
[root@larry k8s]# curl icanhazip.com
61.183.234.146
[root@larry k8s]# curl ifconfig.me
61.183.234.146
内网ip:
[root@larry k8s]# ifconfig -a
8、tail命令使用
tail命令语法:
tail [ -f ] [ -c Number | -n Number | -m Number | -b Number | -k Number ] [ File ]
参数解释:
-f 该参数用于监视File文件增长。
-c Number 从 Number 字节位置读取指定文件
-n Number 从 Number 行位置读取指定文件。
-m Number 从 Number 多字节字符位置读取指定文件,比方你的文件假设包括中文字,假设指定-c参数,可能导致截断,但使用-m则会避免该问题。
-b Number 从 Number 表示的512字节块位置读取指定文件。
-k Number 从 Number 表示的1KB块位置读取指定文件。
File 指定操作的目标文件名称
上述命令中,都涉及到number,假设不指定,默认显示10行。Number前面可使用正负号,表示该偏移从顶部还是从尾部開始计算。
tail可运行文件一般在/usr/bin/以下。
使用方法举例:
1、tail -f filename
说明:监视filename文件的尾部内容(默认10行,相当于增加参数 -n 10),刷新显示在屏幕上。退出,按下CTRL+C。
2、tail -n 20 filename
说明:显示filename最后20行。
3、tail -r -n 10 filename
说明:逆序显示filename最后10行。
补充:
跟tail功能相似的命令还有:
cat 从第一行開始显示档案内容。
tac 从最后一行開始显示档案内容。
more 分页显示档案内容。
less 与 more 相似,但支持向前翻页
head 仅仅显示前面几行
tail 仅仅显示后面几行
n 带行号显示档案内容
od 以二进制方式显示档案内容
9、linux多行注释
9.1.多行注释:
1. 首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;
2. 在行首使用上下键选择需要注释的多行;
3. 按下键盘(大写)“I”键,进入插入模式;
4. 然后输入注释符(“//”、“#”等);
5. 最后按下“Esc”键。
注:在按下esc键后,会稍等一会才会出现注释,不要着急~~时间很短的
9.2.删除多行注释:
1. 首先按esc进入命令行模式下,按下Ctrl + v, 进入列模式;
2. 选定要取消注释的多行;
3. 按下“x”或者“d”.
注意:如果是“//”注释,那需要执行两次该操作,如果是“#”注释,一次即可
9.3.多行删除
1.首先在命令模式下,输入“:set nu”显示行号;
2.通过行号确定你要删除的行;
3.命令输入“:32,65d”,回车键,32-65行就被删除了,很快捷吧
如果无意中删除错了,可以使用‘u’键恢复(命令模式下)
10、linux用户管理
10.1.查看用户
whoami #要查看当前登录用户的用户名
who am i #表示打开当前伪终端的用户的用户名
who mom likes
10.2. 创建用户
adduser newname // 新建用户newname
adduser 会创建用户,创建目录,创建密码(提示你设置),做这一系列的操作。
10.3.创建组
groupadd testgroup
10.4.查看组
cd /home
ls -l #第三列表示文件或目录的所有者,第四列表示文件或目录的所在群组
groups #查看当前登陆用户所在的组
groups testnewuser #查看testnewuser 所在的组
cat /etc/group #查看所有组
10.5.passwd命令:修改密码
passwd newname
10.6.修改用户账户
usermod是user和modify的缩写,user是英语“用户”的意思,modify是“修改”的意思。usermod命令用于修改用户的账户。
-l:对用户重命名,但是/home目录中的用户家目录名不会改变,需要手动修改。
-g:修改用户所在群组
10.7.设置文件的权限
chmod命令详细用法
访问权限是按照用户来划分的
如上图,除开第一个表示文件或目录属性的符号(此处是d,表示目录。如果是l,则是链接。如果是短横-,那么是普通文件。),其他的9个符号被划分为三组,从左到右分别
第一组rwx表示文件的所有者对于此文件的访问权限。
第二组rwx表示文件所属的群组的其他用户对于此文件的访问权限。
第三组rwx表示除前两组之外的其他用户对于此文件的访问权限。
用数字来分配权限:chmod的绝对用法。事实上,Linux系统对每种权限(r,w和x)分配了对应的数字:
权限 数字
r 4
w 2
x 1
如果我们要合并这些权限,就需要做简单的加法了:将对应的数字相加。以下是可能的组合形式:
权限 数字 计算
--- 0 0 + 0 + 0
r-- 4 4 + 0 + 0
-w- 2 0 + 2 + 0
--x 1 0 + 0 + 1
rw- 6 4 + 2 + 0
-wx 3 0 + 2 + 1
r-x 5 4 + 0 + 1
rwx 7 4 + 2 + 1
例如:640分别表示:
文件的所有者有读和写的权限。 文件所在群组的其他用户具有读的权限。 除此之外的其他用户没有任何权限。
-R参数:递归地修改访问权限
假如我要只允许newname这个用户能读,写,运行/home/newname这个目录的所有文件(当然,root不算,root可以做任何事),该怎么做呢?
chmod -R 700 /home/newname
10.8 chown命令
chown是change和owner的缩写,change是英语“改变”的意思,owner是英语“所有者”的意思。
chown命令:改变文件的所有者,后接新的所有者的用户名,再接文件名。例如:
11.sh xx.sh和./xx.sh的异同
这两个命令都是对脚本文件执行相关的操作[start|stop|restart|reload],区别是用./来操作,必须是该脚本文件有可执行权限x,而sh可以执行任意权限的脚本文件。