linux学习记录

VMware 的网络适配器#

  • 桥接模式
    虚拟系统可以和外部系统直接通信,容易造成ip冲突
    eg: 计算机使用192.168.0.20和外界通信,虚拟系统使用192.168.0.80和外部通信
  • NAT模式 (一般情况下选择此模式)
    网络地址转换模式,相当于在主机中加了一台交换机,虚拟系统通过交换机和外界通信 不会造成ip冲突。
  • 仅主机模式
  • 自定义

linux分区#

一般分为三个分区

  • boot 1G
  • swap 和内存大小一致 2G
  • root 剩余内存 17G

vim的使用#

  • 1 正常模式
    • 以vim 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档案内容,也可以使用『复制、粘贴』来处理你的文件数据。
      在正常模式下输入u可以撤销前面的活动
      在正常模式下按 V 进入可视模式,可通过方向键来选定文字
      Y 进行拷贝,按 d 剪切文本,按P将文本粘贴至光标后面。p粘贴到光标前面
  • 2 插入模式
    按下i,I,o,O,a,A,r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可.
  • 3 命令行模式
    输入esc 再输入:,在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim 、显示行号等的动作则是在此模式中达成的!
    • :w 将编辑内容写入文档中
      :q 离开vi
      :wq 存储并离开
      !在vi中有强制的意义
      :w [filename] 另存新档

      :set nu 显示行号 :set nonu去除行号

关机&重启命令#

命令 功能
立刻关机 shutdown -h now halt poweroff
重启 reboot(需是root用户) shotdown -r now
十分钟后关机 shutdown -h 10

用户登录&注销#

表示普通用户 || # 表示root用户

    1. 使用 su - username 来切换系统管理员身份。
    1. 使用logout退出当前用户。 该指令在图形运行级别无效。(在centOs的terminal中无法使用logout指令。)

添加用户&用户组

    1. 添加用户 useradd username
    1. 指定/修改密码 passwd username
    1. 添加组 groupadd groupname
    1. 增加用户时直接加上组 useradd -g 组名 用户名

帮助指令#

man指令#

Copy Highlighter-hljs
man [命令或配置文件] eg: man ls

help指令#

Copy Highlighter-hljs
help 命令 (功能描述:获得shell内置命令的帮助信息)

常用指令#

cd指令#

  • cd ~ 或 cd 回到自己的家目录
  • cd .. 回到当前目录的上一级目录

mkdir 目录#

Copy Highlighter-hljs
基本语法 mkdir [选项] 要创建的目录 -p 创建多级目录,例子如下: mkdir -p ./code/js

rmdir 删除目录#

Copy Highlighter-hljs
rmdir [选项] 要删除的空目录 若要删除的目录中还有文件可用rm -rf 删除

touch 创建空文件#

Copy Highlighter-hljs
touch 文件名

cp 拷贝文件#

Copy Highlighter-hljs
cp [选项] source dest -r: 递归复制整个文件夹

rm 移除文件或目录#

Copy Highlighter-hljs
rm [选项] 要删除的文件 -r 递归删除文件或目录 -f 强制删除不提示

mv 移动文件或重命名#

Copy Highlighter-hljs
mv 旧名 新名 mv /tmp/movefile /targetFolder

echo 输出内容到控制台#

Copy Highlighter-hljs
echo [选项] [输出内容] eg: echo $PATH

date 显示&设置当前日期#

Copy Highlighter-hljs
-d<字符串>:**显示**字符串所指的日期与时间。字符串前后必须加上双引号; -s<字符串>:根据字符串来**设置**日期与时间。字符串前后必须加上双引号;

%Y表示年,%m表示月,%d表示日,%H表示小时,%M表示分钟,%S表示秒,%s表示从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数,相当于time函数,%w表示一周中的第几天。
eg: date +"%Y-%m-%d" 2015-12-07

gzip压缩 gunzip解压#

Copy Highlighter-hljs
zip [选项] xxx.zip -r 递归压缩,即压缩目录 unzip [选项] xxx.zip -d <目录> 指定解压后的目录

linux组管理和权限管理#

查看文件的所有者 - ls -ahl
修改文件的所有者 - chown 用户名 文件名

权限的基本介绍#

ls -ahl中显示的内容如下

Copy Highlighter-hljs
-rw-rw-r--. 1 wxz firewood 182 3月 31 10:14 hello.java
Copy Highlighter-hljs
文件列表信息分为:文件类型、权限、链接数(子目录数)、所属用户、所属用户组、文件大小、最后修改时间、文件名。

linux一共有7种文件类型,分别如下:

Copy Highlighter-hljs
   -:普通文件   d:目录文件   l: 软链接(类似Windows的快捷方式)   (下面四种是特殊文件)   b:块设备文件(例如硬盘、光驱等)    p:管道文件   c:字符设备文件(例如猫等串口设备)鼠标键盘   s:套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件)

文件权限对应关系

权限 对应数字 意义
r 4 可读
w 2 可写
x 1 可执行

rwxr-xr-x 5 root root 94 Jun 27 2017 xdg

  • rwx:代表 文件所有者(u表示)权限 ,这里是root,root对该文件拥有读写执行权限。
  • r-x : 代表所属组(g表示)的权限,这里所属组拥有对该文件读和执行的权限。
  • r-x : 代表其他人(o表示)的权限,这里和上面权限一样。

rwx 作用到文件时, 可以修改,但不代表可以删除该文件,删除一个文件的前提是对文件所在的目录有写的权限
rwx 作用到目录时, 具有修改目录结构的权限,比如新建文件和目录,删除此目录下文件和目录,重命名此目录下文件和目录,剪切和复制。

chmod - 改变文件的访问权限#

chmod [options] mode file...

Copy Highlighter-hljs
[ugoa...][[+-=][rwxX]...][,...], 其中 [ugoa...] u 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示所有(包含上面三者)。 [+-=] + 表示增加权限,- 表示取消权限,= 表示唯一设定权限。 [rwxX] r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。

一般使用格式#

  • 设置所有用户可读取文件 a.conf

    Copy Highlighter-hljs
    chmod ugo+r a.sh 或 chmod a+r a.con
  • 设置 c.sh 只有 拥有者可以读写及执行

    Copy Highlighter-hljs
    chmod u+rwx c.sh
  • 设置文件 a.conf 与 b.xml 权限为拥有者与其所属同一个群组 可读写,其它组可读不可写

    Copy Highlighter-hljs
    chmod a+r,ug+w,o-w a.conf b.xml
  • 设置当前目录下的所有档案与子目录皆设为任何人可读写

    Copy Highlighter-hljs
    chmod -R a+rw *

数字权限使用格式#

Copy Highlighter-hljs
r=4,w=2,x=1 。此时其他的权限组合也可以用其他的八进制数字表示出来,如: rwx = 4 + 2 + 1 = 7; rw = 4 + 2 = 6; rx = 4 +1 = 5;

示例
设置所有人可以读写及执行

Copy Highlighter-hljs
chmod 777 file (等价于 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file)

Linux常用权限#

Copy Highlighter-hljs
-rw------- (600) 只有拥有者有读写权限。 -rw-r--r-- (644) 只有拥有者有读写权限;而属组用户和其他用户只有读权限。 -rwx------ (700) 只有拥有者有读、写、执行权限。 -rwxr-xr-x (755) 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。 -rwx--x--x (711) 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。 -rw-rw-rw- (666) 所有用户都有文件读、写权限。 -rwxrwxrwx (777) 所有用户都有读、写、执行权限。

定时任务调度#

基本语法 crontab [选项]#

Copy Highlighter-hljs
-e 编辑crontab定时任务 -l 查询crontab任务 -r 删除当前用户所有的crontab任务

占位符

Copy Highlighter-hljs
* * * * * - - - - - | | | | | | | | | +----- 星期中星期几 (0 - 6) (星期天 为0) | | | +---------- 月份 (1 - 12) | | +--------------- 一个月中的第几天 (1 - 31) | +-------------------- 小时 (0 - 23) +------------------------- 分钟 (0 - 59)

特殊符号的说明

特殊符号 含义
* 表示任何时间,比如第一个*就代表每分钟执行一次的意思
, 表示不连续的时间,比如0 8,12,16 * * * 命令,代表在每日8、12、16点执行一次
- 代表连续的时间段
*/n 代表隔多久执行一次,如 */10 * * * * 代表隔10分钟执行一次

实例#

Copy Highlighter-hljs
0 */2 * * * /sbin/service httpd restart 意思是每两个小时重启一次apache 50 7 * * * /sbin/service sshd start 意思是每天750开启ssh服务 50 22 * * * /sbin/service sshd stop 意思是每天2250关闭ssh服务 0 0 1,15 * * fsck /home 每月1号和15号检查/home 磁盘 1 * * * * /home/bruce/backup 每小时的第一分执行 /home/bruce/backup这个文件 00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \; 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件。 30 6 */10 * * ls 意思是每月的1112131日是的630执行一次ls命令

shell编程#

posted @   Firewooood  阅读(27)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
点击右上角即可分享
微信分享提示
CONTENTS