Linux学习记录(一)

Linux学习记录(一)

  • Linux常用命令
    • 文件处理命令
    • 权限管理命令
      • 1.改变文件权限
      • 2.Linux中的rwx权限
      • 3.改变所有者和所属组
      • 4.权限管理命令
    • 文件搜索命令
      • 1.find命令
      • 2.locate命令
      • 3.which,whereis,grep命令
    • 帮助命令
    • 用户管理命令
    • 压缩/解压命令
    • 网络命令
    • 关机重启命令

在学Linux的过程中随学随记一些知识点,为了简单易查,于是将知识点记在这里,以便以后参考,随时更新

Linux常用命令

文件处理命令

略(刚开始记的时候这一段并没有开始记,然后就略过吧哈哈哈哈)

权限管理命令

1.改变文件权限

chmod [u,g,o,a][+-=][rwx] 文件名,如 chmod u+w,o-r my
chmod 777 my,其中r=4,w=2,x=1
chmod -R 777 dir,递归授予权限,将目录中所有文件全部授予此权限,文件中的文件也如此

2.Linux中的rwx权限

文件:
r:可以查看文件内容,cat/more/less/head/tail
w:可以修改文件内容,vim
x:可以执行文件,(当文件是一个脚本script或命令文件command时)
目录:
r:可以列出目录中的内容,ls
w:可以在目录中创建或删除文件,touch/mkdir/rm/rmdir
x:可以进入目录,cd

3.改变所有者和所属组

chown [用户] [文件或目录]
chgrp [用户组] [文件或目录]
useradd [用户名]:添加用户
groupadd [组名]:添加组

4.权限管理命令

umask -S:显示新建文件的缺省权限
缺省创建的文件无法具有可执行权限
直接键入umask会得到一组数字(0022)
0:特殊权限
022:与777按位异或(应该是吧)即得到最终的权限值,即-S显示的值
umask [077]  :  可以通过修改umask的值来更改新建文件的缺省权限,最终的结果值按照上述所说的按位异或的方法来计算。

文件搜索命令

1.find命令

find [搜索范围] [匹配条件]
匹配条件:
-name按名搜索(精准搜索,只搜索精准的名字)find /etc -name init 注意大小写
想要模糊搜索在init两边加星号(*init*)(应该是通配符,?匹配单个字符,*匹配任意长度的字符)
-iname不区分大小写
-size根据文件大小查找,+n:大与,-n:小于,n:等于,按照数据块查找,1数据块512字节(0.5K)
-user根据所有者查找
-amin根据访问时间查找(access)
-cmin根据文件属性查找(change,所谓文件属性就是ls中的东西)
-mmin根据文件内容查找(modify,就是根据修改内容的时间查找)
-type根据文件类型查找,f:文件,d:目录,l:软连接文件
-inum根据i节点查找,可以用于查找硬链接,或者删除某些有奇怪的名字的文件
-a两个条件同时满足,如:find / -size +2048 -a -size -20480 根目录下查找大与2048小于20480个数据块的文件
-o两个条件任意满足一个
-exec/-ok 命令 {} \; 对搜索结果执行操作。(-ok会一个一个询问)例:find / -name init -exec ls -l {} \;

2.locate命令

locate 文件名:在文件资料库中查找文件
资料库在/var/lib/mlocate.db
更新文件资料库:updatedb(有些不在文件资料库收录的目录中的文件不能找到,如tmp中的文件)
locate -i 文件名:不区分大小写

3.which,whereis,grep命令

which 命令:搜索命令所在目录及别名信息
whereis [命令名称]:搜索命令所在目录及帮助文档路径
grep -iv [指定字串][文件]:在文件中搜寻字串匹配的行并输出
  选项:
  	-i:不区分大小写     
  	-v:排除指定字串,若想删除以某字串开头的行,需要在字串前加^,如^#删除#开头的行(脚本注释)

帮助命令

man [命令或配置文件]     /要搜索的字符    可以搜索特定的字符或字符串
要显示配置文件信息的时候不要用绝对路径,直接加名称就行
man1:命令的帮助    man5:配置文件的帮助   若同时对应一个命令或配置文件,优先显示命令,想看配置文件用man 5 名字

whatis 命令:直接读取命令的简短信息

apropos 配置文件名:直接读取配置文件简短信息

命令 --help:列出常见的选项
help 命令:查看shell内置命令的帮助信息(找不到命令位置的命令,不能用man)

用户管理命令

useradd 用户名:添加新用户,只是添加了一些基本信息(家目录等)
passwd 用户名:设置用户密码,普通用户不允许设置较简单的密码,且只能更改自己的
who   :查看当前登录的用户信息
包括:登录用户名,登录终端(tty本地终端,pts远程终端),登陆时间,登录主机的IP(没写就是本地登录)
w:查看登录用户的详细信息
  第一行:
  	当前系统时间
  	系统已经运行了多久(up)
  	当前总共多少用户登录
  	负载均衡指数(1,5,15分钟)
  第二行
  	IDLE:登录之后空闲时间
  	PCPU:当前用户登录过来执行的操作占用的CPU的时间(CPU时间)
  	what:当前执行什么操作
  	JCPU:用户累计操作占用的CPU时间

压缩/解压命令

gzip [文件]:压缩文件,压缩之后文件的格式为.gz。不能压缩目录,只能压缩文件,而且不保留原文件
gunzip [压缩文件]:解压缩.gz文件,也可以用gzip -d命令解压缩

tar 选项[-zcvf][压缩后文件名][目录]:打包目录,压缩后文件格式.tar.gz,选项好像有顺序要求,但是保留原文件
-c:打包,-v:显示详细信息,-f:指定文件名,-z:打包同时压缩,-j:生成.tar.bz2文件,位置在c与f之间
tar 选项[-zxvf] 要解包的文件:解包
-x:解包,-v:显示详细信息,-f:指定解压文件,-z:解压缩
如果要跨目录解压,则要在目标目录前加-C

zip 选项[-r][压缩后文件名][文件或目录]:压缩文件或目录,压缩后文件格式:.zip,保留原文件,且会显示压缩比
-r:压缩目录
unzip [压缩文件]:解压.zip文件

bzip2 选项[-k][文件]:压缩文件,压缩后格式.bz2,压缩比非常惊人,适合压缩较大文件
-k:产生压缩文件后保留原文件
bunzip2 选项[-k][压缩文件]:解压缩,-k同上

网络命令

write <用户名>:给在线用户发信息,以Ctrl+D保存结束。信息错误时要用Ctrl+退格或delete

wall [message]:发广播信息(给所有用户,自己也会收到)

ping 选项 IP地址:测试网络连通性    -c:指定发送次数,否则会一直ping
要关注丢包率packet loss

ifconfig 网卡名称 IP地址:查看和设置网卡信息

mail [用户名]:查看发送电子邮件,Ctrl+D结束。直接用mail命令接受邮件

last:列出目前与过去登入系统的用户信息
lastlog:检查全部用户上次登陆的时间   
  选项:
	-u:加上uid可以只查看某用户的信息(查看uid的命令:id 用户名)

traceroute 网址:显示数据包到主机间的路径

netstat [选项]:显示网络相关信息
  选项:
  	-t:TCP协议
  	-u:UDP协议
  	-l:监听
  	-r:路由
  	-n显示IP地址和端口号
	-tlun:查看本机监听的端口
	-an:查看本机所有网络连接  
	-rn:查看本机路由表(查看网关,最后一行)

setup:配置网络(Redhat的命令)永久生效

mount [-t 文件系统]设备文件名 挂载点:挂载命令,一般挂载在/mnt上
umount 设备文件名:取消挂载。不能在当前目录取消挂载,不取消挂载无法做弹出光驱等操作

关机重启命令

shutdown [选项] 时间
  选项:
  	-c:取消前一个关机命令
  	-h:关机
  	-r:重启
  时间:可以设置为now,也可以设置为时:分或者+3(分钟)的格式
  早期只有shutdown命令会在关机和重启之前正确的保存它正在启动的服务。现在其他的命令也实现了这一功能
其他关机命令:
  halt,poweroff,init 0
其他重启命令:
  reboot,init 6

系统运行级别:(不同的系统可能不一样,根据系统确定具体含义)
  0:关机
  1:单用户(启动最核心的程序,用来做修复,类似安全模式)
  2:不完全多用户,不含NFS(Network File System)服务,此服务主要用于两个Linux(Unix)系统之间的文件共享,不一定安全,不建议使用
  3:完全多用户
  4:未分配
  5:图形界面(X11,X指Xwindow,Linux中大部分的X都是图形界面)
  6:重启
  可以使用cat命令在/etc/inittab文件中查询具体含义以及现级别
  可以用runlevel命令查询级别,第一个输出是上一个级别,第二个是现在的级别。
  有些系统(Ubuntu)没有inittab文件,那么使用如下命令设置默认启动级别:(18.04)
    sudo systemctl set-default runlevel3.target
    或者
    sudo systemctl set-default multi-user.target(文本模式)
    sudo systemctl set-default graphical.target(图形模式)
    也能用Ctrl+Alt+F1设置为图形模式,Ctrl+Alt+F5设置为文本模式
  此部分根据系统以及版本不同而不同,需要看使用时的具体情况

SSH中的退出登录命令:logout

你可能感兴趣的:(我的Linux学习记录,linux)