linux基础

一、基础的准备

命令的组成:command --全名-缩写(可加多个)

重要的热键:[tab][tab]自动补全  [ctrl]+c终止执行  [ctrl]+z暂停  [ctrl]+d结束输入

参看帮助信息:help

几个常用的命令:nano bc

 

二、文件操作

-rw-rw-r-- 1 zz zz   252 Dec 23 20:02 first.cpp

九个权限  链接的数量 所有者 用户组  大小 修改时间 文件名

文件的开头[d]设备接口  [c]串行接口设备

Rwx=4+2+1

 

改变文件的属性与权限chown chgrp chmod

目录:/boot启动目录 /usr用户/var与运行过程有关  /bin二进制文件  /dev设备文件

/etc配置文件  /lib函数库  /mnt挂载  /opt第三方开源软件 /root系统管理员文件夹

/sbin超级管理员文件夹 /srv服务 /tmp零时文件夹

 

Rm -r 递归删除文件 / mv 移动文件移动的地方 /cp 要复制的文件 复制的地方

../上级目录 ./此目录 /根目录 ~用户目录  pwd  ls  cd

Mkdir rmdir

文件的查看:cat -n filename显示行号

 More    按页显示

 less  桉页查看,可进行查找

head  -n 20 显示前面20行

tail    -n 20 显示最后20行 || tail -n +20 从20行开始显示

od 显示非纯文本文件

修改文件的时间(不存在则会创建新的文件)touch 1.txt

文件的默认权限umask

文件的隐藏属性:chattr [+-=] a/I 不能删除文件,a可以增加 lsattr

文件的特殊权限:suid sgid sbit会让用户暂时拥有root权限

查看文件的类型:file name

文件的查找:

                     Whereisname

                     Locataname

                     Find路径 -mtime -3 三天内产生的文件(不含第三天)

                                     -mtime +3 三天之前产生的文件(不含第三天)

                                     -newer name 在路径下找到比name文件更新的文件

                                  -uid/gid/nouser/nogroup number 找到用户ID的文件

                                    -user username

                                     -perm 7 权限为7的文件

                                     -name  filename

 

三、文件系统

节点式构成,superblock最顶级,和数组一样每一个元素只能存储一个内容,这样不可避免的造成了一定程度的浪费

Df查看挂载的设备

Dumpe2fs /dev/sda1查看系统节点信息

Du 查看文件的容量大小 -am 看文件和目录的大小,单位M

Ln让两个innode指向同一个block  -s创建快捷方式

分区:fdisk -m获取菜单界面fdisk /dev/sda

磁盘格式化:mkfs -t ext3 /dev/sda1

磁盘检验:fsck -c -f /dev/sda1

磁盘的挂载: mount -l显示挂载信息

                     Ex:mkdir/etc/mnt;    mount /dev/sda /etc/mnt

                     Umount/dev/sda1

E2label 修改卷标名字

Dumpe2fs -h /dev/sda1查看信息

开机挂载:信息在/etc/fstab和/etc/mtab里面

特殊挂载:ex:

                     Ddif=/dev/zero of=/home/xx.iso bs=1M count=1024

                     mount-o loop /home/xx.iso /newdir

 

内存交换空间mkswap

文件的压缩和解压:compress/uncompress

                              Gzip -d xx.gz 解压   zcat xx.gz读取压缩文件

                              Bzip2 -d xx.bz2 解压  bzcat xx.bz2 读取文件

                              Tar 打包文件夹

                              Ex: tar -jcv -f xx.tar.gz /home 压缩

                                 Tar -jtv -f xx.tar.gz 查看   

                                    Tar -jxv -f xx.tar.gz 解压

四、vim/vi的使用

<start position><command><end position>   0y$ copy current line

各种插入模式

  • a → 在光标后插入
  • o → 在当前行后插入一个新行
  • O → 在当前行前插入一个新行
  • cw → 替换从光标所在位置后到一个单词结尾的字符
  • i当前字符处插入
  • r替换
简单的移动光标
  • 0 → 数字零,到行头
  • ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
  • $ → 到本行行尾
  • g_ → 到本行最后一个不是blank字符的位置。
  • /pattern → 搜索 pattern 的字符串
  • gg文章首字符,ng跳到n行
  • w → 到下一个单词的开头。e → 到下一个单词的结尾。
  • % : 匹配括号移动,包括 ({[
  • * 和 #:  匹配光标当前所在的单词,移动光标到下一个(或上一个)匹配单词(*是下一个,#是上一个)
    • fa → 到下一个为a的字符处,你也可以fs到下一个为s的字符。
    • t, → 到逗号前的第一个字符。逗号可以变成其它字符。
    • 3fa → 在当前行查找第三个出现的a。
    • F 和 T → 和 f 和 t 一样,只不过是相反方向。
    Line moves
拷贝/粘贴  
  • P → 粘贴
  • yy → 拷贝当前行当行于 ddP
Undo/Redo
  • u → undo
  • <C-r> → redo
打开/保存/退出/改变文件 (Buffer)
  • :e <path/to/file> → 打开一个文件
  • :w → 存盘
  • :saveas <path/to/file> → 另存为 <path/to/file>
  • :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
  • :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
  • :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。(陈皓注:我喜欢使用:n到下一个文件)
删除,重复操作
    • 2,3d删除2-3行
    • 3p → 粘贴文本3次
    • 100idesu [ESC] → 会写下 “desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu desu “
    • . → 重复上一个命令—— 100 “desu “.
    • 3. → 重复 3 次 “desu” (注意:不是 300,你看,VIM多聪明啊).
  • 替换:[%][n]s/from/to/g[]  c询问  %全部行

自动提示: <C-n> 和 <C-p>
宏录制: qa 操作序列 q@a@@
  • qa 把你的操作记录在寄存器 a。
  • 于是 @a 会replay被录制的宏。
  • @@ 是一个快捷键用来replay最新录制的宏。
可视化选择: v,V,<C-v>

前面,我们看到了 <C-v>的示例 (在Windows下应该是<C-q>),我们可以使用 v 和 V。一但被选好了,你可以做下面的事:

  • J → 把所有的行连接起来(变成一行)
  • < 或 > → 左右缩进
  • = → 自动给缩进 

在所有被选择的行后加上点东西:

  • <C-v>
  • 选中相关的行 (可使用 j 或 <C-d> 或是 /pattern 或是 % 等……)
  • $ 到行最后
  • A, 输入字符串,按 ESC

 

(1)颜色设置

    syntax on       "开启代码高亮
    syntax off      "关闭代码高亮
    syntax enable   "开启代码高亮

(2)搜索设置

    set hlsearch    "开启搜索高亮
    set nohlsearch  "关闭搜索高亮
    set incsearch   "输入搜索字符串的同时进行搜索
    set ignorecase  "搜索时忽略大小写

(3)用户界面

    set showmode        "开启模式显示
    set ruler           "开启光标位置提示
    set number      "显示行号
    set nonu            "不显示行号
    set cursorline      "强调光标所在行
    set cmdheight=1 "命令部分高度为1

(4)编辑辅助配置

    set autoindent      "自动缩进
    set noautoindent    "不自动缩进
    set smartindent     "智能缩进
    set autoread        "当文件在外部被改变时,vim自动更新载入
    set showmatch       "显示匹配的括号

 

 

 

五、shell

Type name查看是否是shell内部命令

Myname=zylg变量的设置

Unset myname取消变量

Export myname 让变量成为环境变量

Set查看所有变量 env查看环境变量

Declare -I name 声明为整形 -a数组 -x环境变量

别名:alias google-google-chrome

Bash符号:

#注释  \转义  ;分隔  ~主文件夹 $变量名加上 & !  /根目录 >重写 >>追加

命令执行:&&  || 

管道 |

PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin;

export PATH;

echo -e "helleo welcome to this program";

read -p "please input your name: " namei;

name=${name};

date1=$(date --date='2 day ago'+%Y%m%d);

date2=$(date --date='1 day ago'+%Y%m%d);

date3=$(date %Y%m%d);

file1=${name}${date1};

file2=${name}${date2};

file3=${name}${date3};

touch "$file1";

touch "$file2";

touch "$file3";

 

 

六、账号管理

/etc/passwd的构成

zz:x:1000:1000:zz,,,:/home/zz:/bin/bash

账号名称:密码:uid:gid:用户信息说明:主文件夹:shell

/etc/shadow的构成

zz:$1$6RIV$S6K8o6i6y5vDXwjXm.Gnn0:17508:0:99999:7:::

名称:密码:创建的日期:不允许修改密码的天数:多少天后必须修改密码:宽限使用七天:密码失效:用户失效:保留

/etc/group的构成

 名字:密码:gid

useradd [-u uid] [-g 初始用户组] [-G 次要用户组] [-d 主文件夹] [-s shell] name

Uid<500系统用户

Userdel -r name

Passwd 修改密码

 

修改shadow

Chage -l 显示全部

      -d 修改创建日期         (3)

      -m 修改密码保留天数     (4)

      -M多久后强制修改密码    (5)

      -w密码是失效前警告的日期(6)

      -I 密码失效日期           (7)

      -E账户失效日期          (8)

Usermod -d 主文件夹

         -c 说明信息

         -g 初始用户组

         -G 次要用户组

         -l 用户名称

不是管理员可以finger查看 id chsh

Groupadd [-g gid] name

Who w last lastlog查看用户

 

七、Linux信息传递

Write zz yyy7

Mesg n|y 开关

Wall广播

/etc/sudoers这个文件记录是否可以使用sudo

 

八、例行工作

一次例行

At 18:00 1027-12-20

At> shutdown -s now

[ctrl]+d

 

Atq查看例行的项目

Atrm 删除例行

 

周期例行

在文件/etc/crontab查看所有的周期例行的信息

文件记录的构成(周日月不能同时赋值)

分时日月周 user command

Ex: 01 4 * * * zz shutdown -s now每天的4:01关机

   */5 * * * * zz shutdown -s now 每隔五分钟关机

发生了关机,例行工作并没有完成,用anacron去检测执行

 

九、进程管理

&后台运行

Ps aux查看进程

Jobs -l后台工作状态

Fg 1将后台变为前台

Bg继续运行暂停的进程

Klii -9/-15杀死进程

Top -d 2每隔两秒刷新进程

Pstree进程树

Free内存

Uname内核

Netstat 网络端口状态

Dmesg 分析内核信息

Vmstat检测系统变化

Fuser 已经打开的文件

Lsof进程打开的所有文件

 

 修改界面dpkg-reconfigure gdm

修改语言1.dpkg-reconfigure locales

             2.执行 sudo locale-gen ,生成locale(自动保存在/usr/lib/locale/中)

            3.LANG="zh_CN.GB18030"

 

  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值