八股文 --- Linux命令笔记总结(更新中)

  1. mkdir -p a/b/c 递归式去创建一些嵌套目录

  2. more 分页查看文件内容
    常用参数 : +n 从第n行开始显示; -n 定义屏幕大小为n行;
    常用操作 : = 输出当前行的行号; q 退出more;
    空格键 向下滚动一屏; b 返回上一屏;

  3. less 可控分页查看文件内容
    常用参数 : - i 忽略搜索时的大小写; - m 显示类似more命令的百分比;
    n 显示每行的行号;
    常用操作 : / 字符串 向下搜索; ?字符串 向上搜索;

  4. grep 根据字符匹配来查看文件部分内容
    用法: grep 字符 文件名
    功能: 从文本文件或管道数据流中筛选匹配的行及数据
    常用参数: -i 不区分大小写; -n 显示匹配内容的行号;
    -c 计算搜索的字符串有多少行; -v 反向选择,,即没有‘搜素字符串’内容的行;
    -E 扩展grep,即egrep,可以使用扩展正则表达式
    -l 列出文件内容符合指定的范本样式的文件名称
    正则:“ .* ” 匹配一个或多个任意字符

  5. vi 命令模式下
    删除操作:
    3dd 当前行开始向下删除3行;
    撤销操作:
    u 取消最近的一次操作,并恢复操作结果; U 取消当前行进行的所有操作;
    Ctrl + R 撤销命令u的取消操作;
    复制粘贴操作:
    4yy 复制当前行及后续共4行的文本内容到vi缓冲区;
    7yw 复制当前光标开始的7个单词到vi缓冲区;
    :28,48y 复制第28行到48行的内容到vi缓冲区;
    p 粘贴缓冲区内容到当前光标处,不覆盖文件已有内容;
    替换操作:
    :3,9s/old/new/g 替换3-9行内所有‘old’字符串为‘new’;
    :%s/old/new/g 替换全文内所有‘old’字符串为‘new’;

  6. RPM包管理
    rpm -ivh 包名 安装显示详细信息; rpm -Uvh rpm包名 升级包,可安装;
    rpm -e rpm包名 卸载; rpm -e --nodeps rpm包名 强制卸载;
    rpm -qa 显示系统所装的rpm软件包; rpm -qi rpm包 显示软件包的详细信息;

  7. drwxrwxrwx (rwx421)
    第一个字母(文件类型):d目录,-文件,l链接,b 可随机存取装置,c一次性读取装置。
    接下来三个为一组(u,g,o):属主权限,属组权限,其他用户权限。

  8. Linux 系统目录结构
    /bin: bin 是 Binaries (二进制文件) 的缩写, 这个目录存放着最经常使用的命令。
    /boot:这里存放的是启动 Linux 时使用的一些核心文件,包括一些连接文件以及镜像文件。
    /dev :dev 是 Device(设备) 的缩写, 该目录下存放的是 Linux 的外部设备,在 Linux 中访问设备的方式和访问文件的方式是相同的。
    /etc: etc 是 Etcetera(等等) 的缩写,这个目录用来存放所有的系统管理所需要的配置文件和子目录。
    /home: 用户的主目录,在 Linux 中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的,如上图中的 alice、bob 和 eve。
    /lib: lib 是 Library(库) 的缩写这个目录里存放着系统最基本的动态连接共享库,其作用类似于 Windows 里的 DLL 文件。几乎所有的应用程序都需要用到这些共享库。
    /lost+found: 这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
    /media: linux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
    /mnt: 系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
    /opt: opt 是 optional(可选) 的缩写,这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
    /proc: proc 是 Processes(进程) 的缩写,/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:
    echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
    /root: 该目录为系统管理员,也称作超级权限者的用户主目录。
    /sbin: s 就是 Super User 的意思,是 Superuser Binaries (超级用户的二进制文件) 的缩写,这里存放的是系统管理员使用的系统管理程序。
    /selinux: 这个目录是 Redhat/CentOS 所特有的目录,Selinux 是一个安全机制,类似于 windows 的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
    /srv: 该目录存放一些服务启动之后需要提取的数据。
    /sys: 这是 Linux2.6 内核的一个很大的变化。该目录下安装了 2.6 内核中新出现的一个文件系统 sysfs 。
    sysfs 文件系统集成了下面3种文件系统的信息:针对进程信息的 proc 文件系统、针对设备的 devfs 文件系统以及针对伪终端的 devpts 文件系统。
    该文件系统是内核设备树的一个直观反映。
    当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。
    /tmp: tmp 是 temporary(临时) 的缩写这个目录是用来存放一些临时文件的。
    /usr: usr 是 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。
    /usr/bin: 系统用户使用的应用程序。
    /usr/sbin: 超级用户使用的比较高级的管理程序和系统守护程序。
    /usr/src: 内核源代码默认的放置目录。
    /var: var 是 variable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
    /run: 是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

  9. cp -r:递归持续复制,用于目录的复制

  10. mkdir -p 帮助你直接将所需要的目录(包含上一级目录)递归创建起来

  11. Linux 链接概念
    Linux 链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln 命令产生硬链接。
    硬连接
    硬连接指通过索引节点来进行连接。在 Linux 的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在 Linux 中,多个文件名指向同一索引节点是存在的。比如:A 是 B 的硬链接(A 和 B 都是文件名),则 A 的目录项中的 inode 节点号与 B 的目录项中的 inode 节点号相同,即一个 inode 节点对应两个不同的文件名,两个文件名指向同一个文件,A 和 B 对文件系统来说是完全平等的。删除其中任何一个都不会影响另外一个的访问。
    硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。
    软连接
    另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于 Windows 的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。比如:A 是 B 的软链接(A 和 B 都是文件名),A 的目录项中的 inode 节点号与 B 的目录项中的 inode 节点号不相同,A 和 B 指向的是两个不同的 inode,继而指向两块不同的数据块。但是 A 的数据块中存放的只是 B 的路径名(可以根据这个找到 B 的目录项)。A 和 B 之间是“主从”关系,如果 B 被删除了,A 仍然存在(因为两个是不同的文件),但指向的是一个无效的链接。

  12. EOF的用法
    1 后续的输入作为子命令或子Shell的输入,直到遇到EOF为止,再返回到主调Shell。
    < :输入重定向
    > :输出重定向
    >> :输出重定向,进行追加,不会覆盖之前内容
    << :标准输入来自命令行的一对分隔号的中间内容.
    例 向文件test.sh里输入内容。
    [root@slave-server opt]# cat << EOF >test.sh
    > 123123123
    > 3452354345
    > asdfasdfs
    > EOF
    [root@slave-server opt]# cat test.sh
    123123123
    3452354345
    asdfasdfs
    2 用来注释整段脚本代码。 : 是shell中的空语句。

    : << COMMENTBLOCK
    shell脚本代码段
    COMMENTBLOCK

  13. /dev/null
    一个character special files类型文件。
    所有人都有读写权限,没有执行权限。不能使用管道符 | 来接 /dev/null ,只能使用文件重定向(>, >> 或 <, <<)。
    如果你只关心正常输出,可以在命令后面这样重定向: 2> /dev/null
    如果你只关心报错内容,可以在命令后面这样重定向: > /dev/null
    不输出内容: > /dev/null 2>&1 或 &> /dev/null 或 >& /dev/null
    0:表示标准输入流(stdin),
    1:表示标准输出(stdout)。
    2:表示标准错误输出(stderr)
    2>&1:表示标准错误输出重定向等同于标准输出,因为之前标准输出已经重定向到了空设备文件,所以标准错误输出也重定向到空设备文件。

  14. awk命令
    在这里插入图片描述
    awk -F “:” ‘{print $1,$2,$5}’ /etc/passwd | head -5
    -F “:” : awk选项,指定输入分割符为:,
    ‘{print}’ : 固定语法
    $1,$2,$5 :输出第一个,第二个,第五个字段
    , : 是输出分隔符,如果不加默认是没有分隔符的。
    在这里插入图片描述

  15. 批量杀进程
    ps -ef|grep CBOSS_SERVER|grep -v grep|awk ‘{print $2}’|xargs kill -9

  16. 创建软链
    ln -s 源目标 软链接文件

  17. linux系统端口的5种状态及含义
    1.listening 监听状态 说明该端口是开放的,正在等待连接,但是还没有被连接;
    2.established 正在建立连接 标识两台机器正在通信中;
    3.time_wait 结束连接 说明该端口有过访问,但是访问已经结束;
    4.syn_sent 请求连接 当你要访问其它计算机的服务时,首先要发一个同步信号给该端口,此时状态为syn_sent,如果连接成功了就变成了established,这种syn_sent状态一般是非常短暂的;
    5.closing 关闭连接 端口人为或者防火墙使其关闭,也许服务被卸载。

  18. sed命令
    sed ‘s/原字符串/新字符串/g’ 文件 #g表示全部替换

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值