• linux学习日记之老男孩


    2016年10月5日
    企业面试题:
    cp 命令复制文件是如果有覆盖可能的话如何去除确认步骤,如:将/mnt/text.txt 复制
    到/temp/text.txt,去除覆盖确认命令。
    方法:
    1、加全路径的cp命令,/bin/cp /mnt/text.txt /temp/text.txt。
    2、在命令前增加\,cp /mnt/text.txt /temp/text.txt
    总结,其实cp命令就是/bin/cp -i 命令的别名,linux中为命令起一下别名用alias命令
    ,删除别名用unalias,最好不要随意更改系统默认的别名。
    3、echo命令
    解释:用于在shell中打印shell变量的值,或直接输出指定的字符串。linux的echo命令
    ,在shell编程中极为常用,在终端下打印变量的时候也是常常用到的。
    用法:echo 选项 参数
    注:更多用法参考http://man.linuxde.net/echo,另外应注意与重定向符的配合使用。

    2016年10月6日
    1、seq命令
    解释:用于产生从某个数到另外一个数之间的所有整数。
    用法:seq [选项]... 尾数
         seq [选项]... 首数 尾数
            seq [选项]... 首数 增量 尾数
    注:更多用法参考http://man.linuxde.net/seq
    2、head命令
    解释:用于显示文件的开头内容。在默认情况下,head命令显示文件头的前 10行内容。
    用法:head 选项 参数
    注:更多用法参考http://man.linuxde.net/head
    3、tail命令
    解释:用于输入文件中的尾部内容。默认在屏幕上显示指定文件的末尾10行 ,如给
            定的文件不止一个,则在显示的每个文件前加一个文件名标题 。
    用法:tail 选项 参数
    注:如果表示字节或行数的N值前有一个“+”号,则从文件开关的第N项开始显示,而不是
         文件的最后N项,N值后可以跟后缀,b表示512,k表示1024,M表示1M,更多用法参考: http://man.linuxde.net/tail
    2016年10月8日
    1、sed命令
    解释:是一种编辑器,是处理文本时经常使用的工具,结合正则表达式,功能非凡,处理
            时先把当前要处理的行存储在临时的缓冲区中,然后用sed命令处理缓冲区,处理完后打印
            到屏幕。可以编辑一个或多个文件,简化对文件的反复操作。
    用法:
    sed [options] 'command' file(s)
    sed [options] -f scriptfile file(s)
    例:sed -n '20,30p' 文件名
    功能:替换功能,s表示替换指定的字符,如sed 's/string1/string2/g' 用前面的替换
            后面的,s表示替换功能,g表示全局替换,但应注意以是替换没有修改原文件,只是更改
            了输出结果,要想更改原文件需要使用-i参数,如sed -i 's/string1/string2/g'。

    注:单引号里面是要执行的命令,也就是参数,sed命令擅长取行,详细参数可参考http://man.linuxde.net/sed。这是非常重要的命令,linux里的三剑客的老二。

    2、awk命令
    解释:awk是一种语言,在linux下对文件和数据进行处理。数据可以来自标准输入、一个
       或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等。是linux下
        的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有许多内建的功
        能,比如函数、数组等,灵活性是它的最大特点。
    用法:
        awk [options] 'script' var=value file(s)
      awk [options] -f scriptfile var=value file(s)
    例:awk -F ":" '{print $2 $3}' /etc/passwd
      awk '{if(NR<31&&NR>19) printf $1" "} ' text.txt
    注:awk是linux里常用的命令,三剑客老大,擅长取列,更多用法参考:http://man.linuxde.net/awk
          $0表示打印整行。
    3、grep命令
    解释:一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来 。
    用法:grep match_pattern file_name
         grep "match_pattern" file_name
    参数:-B显示匹配内容的同时再显示之后的内容,如grep 30 -B 10 text.txt
       -A显示匹配内容的同时再显示之后的内容,如grep 30 -A 10 text.txt
       -C显示匹配内容的同时再显示前后的内容,如grep 30 -C 10 text.txt
    注:grep是一种常用的文本搜索工具,是三剑客的老三,擅长过滤。更多用法参考: http://man.linuxde.net/grep

    4、less命令
    解释:less命令与more命令作用十分相似,都可用来浏览文件内容,不同的是less命令允
         许用户向前或向后浏览文件,而more命令只能向前浏览
    用法:less(选项)(参数)
    例:less -e text.txt
    注:更多用法参考http://man.linuxde.net/less
    5、more命令
    解释:是基于vi编辑器文本过滤器,它以全屏的方式按页显示文件内容,支持vi中的关键字定位操作
    用法:more(语法)(参数)
    注:更多用法参考http://man.linuxde.net/more

    2016年10月9日

    1、面试题

    题目:查找符合文件名要求的文件,然后将里面的某一字符串替换为另一个字符串

    方法:可以结合使用find命令和sed命令,两两组合使用,如:find -type f -name  "text.txt" | xargs sed -i 's/string1/string2'

    注意:xargs的使用,另外,xargs 可以使用-exec  {} ;代替,如,find -type -f  -name "text.txt" -exec sed -i 's/string1/string2' {} ;。

    2、xargs命令

    解释:给其它命令传递参数的一个过滤器,也是组合多个命令的一个工具。它擅长将标准

    输入数据转换成命令行参数,能够处理管道或者stdin命令并将其转换成特定的命令的参数

    ,也可以将单行或多行文本输入转换为其它格式,如多行变单行,单行变多行。xargs的默

    认命令是echo,空格是默认定界符。这意味着通过管道传递给xargs的输入将会包含换行和

    空白,不过通过xargs的处理,换行和空白将被空格取代。xargs是构建单行命令的重要组

    件之一。

    用法:cat test.txt | xargs

    选项:-n 多行输出

    注:xargs命令主要用在与其它命令组合使用。

    3、特殊符号

    解释:>输出重定向符,重定向内容到文件,清除已有的内容,然后加入新内容,如果文件

    不存在还会创建文件。

          >> 追加输出重定向符,追加内容到文件(中间无空格),

          <输入重定向符,箭头方向就是数据流的方向。

          <<追加输入重定向符。

          |管道符号,从左向右流,可以接很多。

          转义字符,将具有特殊作用取消

          {}生成字符或数字序列,一般配合echo等命令使用,find里的{}意思是前面命令的结果。如echo {1..10},mkdir stu{1,100}批量建目录

          !+字母表示调出最近一次以此字母开头的命令。!!表示使用最近一次操作的命令,

          !+数字,表示调出历史的第几条命令。

    4、history命令

    解释:用于显示指定数目的指令命令,读取历史命令文件中的目录到历史命令缓冲区中的

    目录写入命令文件,该命令单独使用时仅显示历史命令,历史命令是被保存在内存中的,

    当退出或者登录shell时,会自动保存或读取。

    用法:经常与!一起使用,调用历史命令。

    5、ps命令

    解释:用于报告当前系统进程状态,可以搭配kill指令随时中断、删除不必要的程序,ps

    命令是最基本也是最强大的进程查看命令,使用该命令可以确定哪些进程正在运行和运行

    状态、进程是否结束、进程有没有僵死、哪些进程占用了过多的资源等等。

    用法:ps 选项

    注:更多选项参考:http://man.linuxde.net/ps

    6、netstat命令

    解释:打印linux中网络系统的状态信息,可让你知道整个linux系统的网络情况。

    用法:netstat 选项

    注:更多选项请参考:http://man.linuxde.net/netstat

    2016年10月10日
    1、linux与Windows共享文件
      用rz-sz工具,首先在linux中安装,方法:yum install lrz-sz -y;在CRT选项中设置共享的目录
      CRT中进行文件共享,使用命令:rz -y 上传,rz -y 文件名 下载。
      注:上传不能是目录,要打包。-y选项是覆盖。
    2、CRT中批量管理多个服务器
      在新建连接对话框中选择在“一个标签中打开”复选框,然后在查看菜单中选择“交谈窗口”,这时会在下方打开一个输入框,
      右键选择“将交谈发送到所有标签”,然后在这里输入命令就可以了。
      注:CRT不要最大化。
    3、克隆虚拟机后网卡不能启动的解决办法
      打开/ect/sysconf/network-scripts/ifcfg-eth0,删除MAC地址或UUID,保存重启,这时还是启动不了,解决方法:
      清空/etc/udev/rules.d/70-persistent-net.rules,清空办法是使用>。然后重启。
    4、uname命令
      解释:查看系统的版本
      用法:uname -r 查看内核 或 uname -m 查看位数,-n 查看主机名,-a查看所有信息。
    5、hostname 命令
      解释:查看主机名称
      用法:hostname
    6、useradd 命令
      解释:添加用户
      用法:useradd 用户名
    7、passwd命令
      解释:设置密码
      用法:passwd 用户名
    8、whoami命令
      解释:查看当前用户
      用法:whoami
    9、su命令
      解释:切换用户
      用法:su -
      注意:如果要完全切换su后要跟-,不然环境变量仍然是前一个用户的。
    10、系统优化之关闭SELinux
      解释:SELinux(Security-Enhanced Linux)是美国安全局对于强制访问控制的实现,这个功能让系统管理员又爱又恨,这里是考虑先把它关闭了。
      用法:将/etc/selinux/config文件中的SELINUX=enforcing改为SELINUX=disable。
      注:SELinux的相关配制在/etc/selinux/config中,更改完后要重启,可以用getenforce查看是否生效,使生效可以用setenforce 0(1:启用,0:是警告但不启        用),但这只是临时生效。
    11、设置运行级别
      解释:系统的状态存在着 7个级别,分别是0:关机状态、1:单用户模式、2:多用户模式(没有网络文件系统)、3:文本模式(完整的多用户模式)、4:没有使用
          5:桌面模式、6:重启模式
      用法:更改配制文件/etc/inittab中的最后一行。查看运行模式使用命令:runlevel,切换运行级别:init 6
      注:7.0版本以前使用这个文件,以后已不再使用这个文件。
    12、linux启动后要保留的服务有5个
      解释:第一个,sshd,远程连接Linux服务器,必须要开户这个服务,不然无法连接到服务器;第二个,rsyslog,是操作系统提供的一种机制,系统的守护程序通         常会使用
      rsyslog将各种信息写到系统日志文件中去,所以必须启动;第三个,network,系统启动时,若想激活/关闭各个网络接口,则应考虑开启.第四个,crond,该服务   用于周期性地执行系统及用户配制的任务计划.有要周期性地执行的任务需要开启这个服务,此服务几乎是工作中必须用到的一个服务.第五个,sysstat,是一个软件         包,包含监测系统性能及效率的一组工具,这些工具对于系统性能数据很有帮助,比如CPU使用率、硬盘和网络的吞吐数据等,这些系统数据的分析有利于判断系统运       行是否正常,所以它是提高系统运行效率、安全运行服务的助手。

    2016年11月2日
    1、sudo命令
      解释:sudo以其它用户的身份运行命令,预设的身份是root,在/etc/sudoers中设置了可执行sudo指令的用户。
      用法:sudo touch filename
      注:配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它,还必须使用visudo编辑。之所以使用visudo有两个原因,
      一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。

  • 相关阅读:
    8.Nginx常用基础模块
    7.Web基础之Nginx
    6.Web基础之http协议
    5.SSH远程服务
    4.Sersync实时同步
    3.NFS 共享存储
    前端-CSS
    前端-HTTP
    MySQL-其他知识点
    MySQL-pymysql模块
  • 原文地址:https://www.cnblogs.com/wangrx/p/5940450.html
Copyright © 2020-2023  润新知