老男孩教育50期学员左婷婷-day06-linux命令-下部

   

  作者:左婷婷

  归档:学习笔记

  2018/7/16

   

  快捷键:

  Ctrl + 1    标题1

  Ctrl + 2    标题2

  Ctrl + 3    标题3

  Ctrl + 4    实例

  Ctrl + 5    程序代码

  Ctrl + 6    正文

  格式说明:

  蓝色字体:注释

  ×××背景:重要

  绿色背景:注意

   

  老男孩教育50期学员左婷婷-day06-linux命令-下部_命令

  老男孩教育教学核心思想6重:重目标、重思路、重方法、重实践、重习惯、重总结

  学无止境,老男孩教育成就你人生的起点!

  联系方式:

  Linux  385168604

  架构师 390642196

  Python 29215534

  大数据 421358633

  官方网站:

  http://www.oldboyedu.com

  目  录

  第1章 Linux命令下部... 1

  1.1 已知/tmp下已经存在test.txt文件,如何执行命令才能把/mnt/test.txt拷贝到/tmp下覆盖掉/tmp/test.txt,而让系统不提示是否覆盖(root权限下)。... 1

  1.1.1 复制的时候不提示是否覆盖... 1

  1.2 系统的别名... 1

  1.2.1 第1个里程碑-显示系统中的别名... 2

  1.2.2 第2个里程碑-设置别名... 2

  1.2.3 第3个里程碑-配置rm别名-临时生效... 2

  1.2.4 #第4个里程碑-配置rm别名-永久生效... 2

  1.2.5 第5个里程碑-巨坑... 3

  1.2.6 第6个里程碑-重新登录 并检查... 3

  1.3 如何配置别名步骤:... 3

  1.3.1 配置别名练习题... 3

  1.3.2 vim 快捷键... 4

  1.4 把/oldboy目录及其子目录下所有以扩展名 .sh结尾的文件中,文件包含oldboy的字符串全部替换为oldgirl 5

  1.4.1 第1个里程碑-find. 5

  1.4.2 第2个里程碑-替换一个文件中的内容... 5

  1.4.3 sed 修改文件的内容 把文件中的oldboy替换为oldgirl 6

  1.4.4 第3个里程碑-把find命令找出的文件传递给  sed命令... 6

  1.5 linux基础优化... 6

  1.5.1 显示系统的版本信息... 6

  1.5.2 添加用户 设置密码 切换用户... 7

  1.6 预习... 7

   

  第1章 Linux命令下部 

  [root@oldboyedu50 ~]# cp /mnt/test.txt  /tmp/          //拷贝文件

  cp: overwrite `/tmp/test.txt'?            //提示是否将文件覆盖

   

  1.1.1.1  方法1 [root@oldboyedu50 ~]# cp /mnt/test.txt  /tmp/

   

  1.1.1.2  方法2 使用命令的绝对路径(全路径)[root@oldboyedu50 ~]# which cp     //命令的绝对路径(全路径)   

  alias cp='cp -i'

      /bin/cp

  [root@oldboyedu50 ~]# cp /mnt/test.txt  /tmp/

  cp: overwrite `/tmp/test.txt'? ^C

  [root@oldboyedu50 ~]# /bin/cp /mnt/test.txt  /tmp/   

  #cp  overwrite

  #rm  是否删除

  #mv  是否覆盖文件

  cp === cp -i

  rm === rm -i

  mv === mv -i

   

  给命令起了一个外号

  #安全

  #省事

   

  [root@oldboyedu50 ~]# alias     //显示系统中的别名

  alias cp='cp -i'

  alias l.='ls -d .* --color=auto'

  alias ll='ls -l --color=auto'

  alias ls='ls --color=auto'

  alias mv='mv -i'

  1.2.2.1  第1个里程碑-配置rm别名-目标目标:执行rm 屏幕显示rm command bny.

  1.2.2.2  第2个里程碑-配置rm别名-命令 [root@oldboyedu50 ~]# echo rm command bny

  rm command bny

  [root@oldboyedu50 ~]# alias rm='echo rm bny'

  [root@oldboyedu50 ~]# alias rm

  alias rm='echo rm bny'

  [root@oldboyedu50 ~]# rm  /tmp/oldboy.txt

  rm bny /tmp/oldboy.txt

  1.2.4.1  修改文件 /etc/profile[root@oldboyedu50 ~]# tail -5  /etc/profile

  done

   

  unset i

  unset -f pathmunge

  alias rm='echo rm bny'

  生效

  [root@oldboyedu50 ~]# source /etc/profile

  [root@oldboyedu50 ~]# alias rm

  alias rm='echo rm bny'

  [root@oldboyedu50 ~]# vim   /root/.bashrc

  # .bashrc

   

  # User specific aliases and functions

   

  # alias rm='rm -i'

  alias cp='cp -i'

  alias mv='mv -i'

   

  # Source global definitions

  if [ -f /etc/bashrc ]; then

      . /etc/bashrc

  fi

   

  [root@oldboyedu50 ~]# alias rm

  alias rm='echo rm bny'

   

  1.命令行-临时生效  与检查

  alias rm='echo rm bny'

  rm /tmp/oldboy.txt

  2.修改文件-永久生效

  vim /etc/profile

  source /etc/profile

  3.检查

  4.坑-rm mv cp

  /root/.bashrc

  配置别名:

  输入net 显示/etc/sysconfig/network-scripts/ifcfg-eth0文件的内容

  完成后发出

  1.alias net

  2https://blog.51cto.com/13859657/etc/profile最后5行

  1.命令行-临时生效  与检查

  [root@oldboyedu50 ~]# alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth0'

  [root@oldboyedu50 ~]# net

  DEVICE=eth0

  TYPE=Ethernet

  UUID=8fdc5e19-5b35-49fa-b63e-1629a63af1f0

  ONBOOT=yes

  NM_CONTROLLED=yes

  BOOTPROTO=none

  HWADDR=00:0C:29:59:D4:13

  IPADDR=10.0.0.200

  PREFIX=24

  GATEWAY=10.0.0.254

  DEFROUTE=yes

  IPV4_FAILURE_FATAL=yes

  IPV6INIT=no

  NAME="System eth0"

  2.修改文件-永久生效

  vim /etc/profile  #编辑文件写入最后一行

  [root@oldboyedu50 ~]# source /etc/profile

  [root@oldboyedu50 ~]# alias net

  alias net='cat /etc/sysconfig/network-scripts/ifcfg-eth0'

  3.检查

  gg

  到达文件的第1行

  10gg

  到达文件的第10行

  o(小写字母O)

  当前行下面插入一个空行并进入编辑模式

  u

  撤销

   

  [root@oldboyedu50 ~]# rm oldboy.txt

  rm bny oldboy.txt

  [root@oldboyedu50 ~]# m oldboy.txt

  [root@oldboyedu50 ~]# ll oldboy.txt

  ls: cannot access oldboy.txt: No such file or directory

  [root@oldboyedu50 ~]# alias ll

  alias ll='ls -l --color=auto'

   

  环境

  mkdir -p /oldboy/test

  cd /oldboy

  echo "oldboy">test/del.sh

  echo "oldboy">test.sh

  echo "oldboy">t.sh

  touch oldboy.txt

  touch alex.txt

  [root@oldboyedu50 oldboy]# find /oldboy/  -type f -name "*.sh"

  /oldboy/test/del.sh

  /oldboy/test.sh

  /oldboy/t.sh

  [root@oldboyedu50 oldboy]# cat t.sh

  oldboy

  [root@oldboyedu50 oldboy]# sed    's#oldboy#oldgirl#g'     t.sh

  oldgirl

  [root@oldboyedu50 oldboy]# sed    's#oldboy#oldgirl#g'     t.sh

  oldgirl

  [root@oldboyedu50 oldboy]# cat t.sh

  oldboy

  [root@oldboyedu50 oldboy]# sed  -i   's#oldboy#oldgirl#g'     t.sh

  [root@oldboyedu50 oldboy]# cat t.sh

  oldgirl

  [root@oldboyedu50 oldboy]# find /oldboy/  -type f -name "*.sh"    //找出所有含oldboy的文件

  /oldboy/test/del.sh

  /oldboy/test.sh

  /oldboy/t.sh

  [root@oldboyedu50 oldboy]# find /oldboy/  -type f -name "*.sh"|xargs sed 's#oldboy#oldgirl#g'

  oldgirl

  oldgirl

  oldgirl

  [root@oldboyedu50 oldboy]# find /oldboy/  -type f -name "*.sh"|xargs sed -i 's#oldboy#oldgirl#g'

  [root@oldboyedu50 oldboy]# find /oldboy/  -type f -name "*.sh"|xargs cat

  oldgirl

  oldgirl

  oldgirl

  小结:

  1.别名

  2.sed替换

  find+sed

  [root@oldboyedu50 oldboy]# cat /etc/redhat-release       //查看Linux版本

  CentOS release 6.9 (Final)                             

  [root@oldboyedu50 oldboy]# uname –r         //查看内核版本

   2.6.32-696.el6.x86_64

  [root@oldboyedu50 oldboy]# uname –m                        //查看系统是多少位的(64或32位)

  x86_64

  1.5.2.1  添加用户 [root@oldboyedu50 oldboy]# useradd  oldboy         //添加用户

  #password 设置密码

  [root@oldboyedu50 oldboy]# passwd oldboy          //设置密码

  Changing password for user oldboy.

  New password:

  BAD PASSWORD: it is too simplistic/systematic

  BAD PASSWORD: is too simple

  Retype new password:

  passwd: all authentication tokens updated successfully.

  1.5.2.2  切换用户 su - oldboy

  ctrl + d 退出当前用户

  1.find+sed其他方法

  2.关闭iptables和selinux

  3.linux显示中文乱码