标签:mnt source find 绝对路径 过程 去除 插入 nobody col
首先要了解 为什么复制同名的文件系统会提示
因为系统为一些危险的命令设置了别名
cp====cp -i
rm====rm -i
mv====mv -i
如 输入cp 命令 ?相当于输入了 cp -i
[root@nfsnobody ~]# \cp /mnt/test.txt /tmp/??????? 命令最前面加上\
[root@nfsnobody ~]# which cp?????????????????????? 查看命令的绝对路径
alias cp='cp -i'????????????????????????????????????? 用命令的绝对路径
??? /bin/cp
[root@nfsnobody ~]# /bin/cp /mnt/test.txt /tmp/
cp====cp -i
rm====rm -i
mv====mv -i
系统的别名? 给命令起了一个外号
安全
效率(省事)
在管理和维护Linux系统的过程中,将会使用到大量命令,有一些很长的命令或用法经常被用到
重复而频繁的输入某个很长命令或用法是不可取的。
这时可以使用 别名功能将这个过程简单化。
Linux系统下有的命令 如 rm cp mv 等? 这些命令是删除 移动之类的
使用时要谨慎? 也可以通过设置别名 来进行变相的一些的提醒
简单来说
1.使用危险的命令前给予警告 cp rm mv
2.复杂命令使用更加方便
涉及命令alias
[root@nfsnobody ~]# 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'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only--read-alias --show-dot --show-tilde'
临时生效指的是 在重启服务器或者重连Xshell后 就失效的别名
给rm设置别名 rm bny
[root@nfsnobody ~]# alias rm='echo rm bny'??????
[root@nfsnobody ~]# 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'
alias rm='echo rm bny' ??????????????????????????????????????可以看到代表配置成功
alias which='alias | /usr/bin/which --tty-only--read-alias --show-dot --show-tilde'
修改文件/etc/profile
[root@nfsnobody ~]#vim /etc/profile
在/etc/profile 最后一行写入? alias rm='echo rm bny'
[root@nfsnobody ~]# source /etc/profile?????? ???使用source
[root@nfsnobody ~]# alias rm?????????????????????????????? 使用alias rm 可单独查看rm的别名
alias rm='echo rm bny'
此步骤仅限于 rm mv cp? 因为该文件 仅有这三个命令的别名
其余的命令在1.3.4步骤已经配置完成
# 注释 ?#在井号后面的命令不生效
[root@nfsnobody ~]# vim /root/.bashrc
将alias rm='rm -i'? 前面加个#(注释)号? 使该条命令不生效
然后保存即可
然后至此? 别名永久生效
到达文件最后一行? ???大写G
到达文件第一行??? ???gg
到达文件指定行数? 比如到达第十行? ????????????10gg
在当前行 下面一行插入一个空行并进入编辑模式?? o (小写o)
撤销上一步的操作?? ??u
涉及命令find+sed
要求
将nfsnobody目录下的已.sh结尾的文件里的 nfsnobody全部替换为oldgirl
mkdir -p /nfsnobody/test
cd /nfsnobody
echo "nfsnobody">test/del.sh
echo "nfsnobody">test.sh
echo "nfsnobody">t.sh
touch nfsnobody.txt
touch alex.txt
先使用find查找文件
[root@nfsnobody nfsnobody]# find /nfsnobody/ -type f-name "*.sh"???? 使用find查找以.sh结尾的文件
/nfsnobody/t.sh
/nfsnobody/test/del.sh
/nfsnobody/test.sh
[root@nfsnobody nfsnobody]# sed's#nfsnobody#oldgirl#g' t.sh ??##先尝试替换t.sh里的内容
oldgirl??????????????????????????????##替换成功 替换后的内容显示在屏幕上
[root@nfsnobody nfsnobody]# cat t.sh
nfsnobody????????????????????????????????????? ?##修改后的内容只显示在屏幕上? 文件内并没有修改
[root@nfsnobody nfsnobody]# find /nfsnobody/ -type f-name "*.sh" |xargs sed 's#nfsnobody#oldgirl#g'
####先不加 -i先修改看看有没有错误确认无误后? 替换文件里的
oldgirl
oldgirl
oldgirl
[root@nfsnobody nfsnobody]# find /nfsnobody/ -type f-name "*.sh" |xargs sed -i 's#nfsnobody#oldgirl#g'
####确认无误 加上 -i 替换文件里的内容
[root@nfsnobody nfsnobody]# find /nfsnobody/ -type f-name "*.sh" |xargs cat
oldgirl
oldgirl
oldgirl?????????????? ??替换成功
uname-m??? 专门看系统是几位的
uname-r?? ??显示内核版本
[root@nfsnobody ~]# cat /etc/redhat-release?? ##显示系统版本
CentOS release 6.9 (Final)
?
[root@nfsnobody ~]# uname -r?? ##显示内核版本
2.6.32-696.el6.x86_64
#### el6 表示centos6
?
[root@nfsnobody ~]# uname -m??? ##专门看系统是几位的
x86_64
涉及命令 useradd
[root@nfsnobody ~]# useradd nfsnobody????? 添加用户 nfsnobody
涉及命令 passwd
[root@nfsnobody ~]# passwd nfsnobody???? ???设置/更该密码
Changing password for user nfsnobody.
New password:?????????????????????????????? 密码设置为123456? 系统提示太简单 再输一遍即可
BAD PASSWORD: it is too simplistic/systematic
BAD PASSWORD: is too simple
Retype new password:??????????????????????? 再输入一遍
passwd: all authentication tokens updatedsuccessfully.
[root@nfsnobody ~]# su - nfsnobody????????????????? ?切换到nfsnobody用户
[nfsnobody@nfsnobody ~]$ su - root?????????????????? 切换到root用户
Password:?????????????????????? 从普通用户切换成root需要输入一次密码
[root@nfsnobody ~]#
##################################
[nfsnobody@nfsnobody ~]$ logout??????????????? ?快捷键 ctrl+d? 也可以退出当前用户回到root
[root@nfsnobody ~]#
标签:mnt source find 绝对路径 过程 去除 插入 nobody col
原文地址:https://www.cnblogs.com/wenrulaogou/p/11982003.html