Linux 基本指令的操作和示例说明(五节)

指令规则:命令 【参数选项】【文件或路径】

ls -ld (参数 l 和 d) 多参数可以直接连起来操作 前面 加 “ - ”

操作查看目录指令:
mkdir   创建目录
全名称:make directorys   ----    :mkdir   (/data)是创建的目录;或者 cd  /; mkdir  data
第一个指令 是 直接创建 目录 在根  " / "下 :  mkdir  /data  ;
第二个是 进入根" / "下直接创建   :cd /; mkdir data

例子: mkdir /myfile 或者 cd /; mkdir myfile

ls   列表  
ll  :查看该目录下的文件总个数    

例子: ll

参数  l   (long)      长格式       
参数 d (directorys) 查看目录

例子: ls -l \ ls -d \ ls -ld() ls /data (进入目录下查看

cd   改变目录路径 
全名称 :change directory 
相当路径:没有从根 " / " 开始    cd   data
绝对路径:从根 " / "  开始      cd  /etc

例子: cd /etc ; cd data

pwd  打印工作目录(显示当前所在路径)
全名称  :print work  directory 

例子: pwd 输出结果:/directory / (那个文件)

操作文件指令:
touch    创建文件及更新时间戳
若文件不存在   touch  file.txt  
若文件存在  更新时间戳(文件的时间属性)  ;

例子: touch /myfile/file.txt
vi 编辑文件
vi file.txt
vi 后跟 操作的文件 ; 回车进入待编辑状态
按 " a "或 " i " 字母 进入编辑状态 ; 编辑好之后
按 键盘 Esc 回到 待编辑状态;
输入 " :wq " 保存和退出 编辑 回到 命令行模式;
不想保存: 输入 :q
强制退出 输入 :q!
解释 wq : w(write) 、q (Quit) ;
vim 复杂编辑器

功能复杂,高亮,自动缩进,写脚本(shell  / python 脚本用)
vim  file.txt
按 " a "或 " i  " 字母 进入编辑状态  ; 编辑好之后
按 键盘   Esc  回到  待编辑状态;
输入  " :w "  保存后再按":q"退出 编辑  回到  命令行模式;
echo  覆盖或追加内容  配合  " 重定向 >     "  ,  " 追加   >>"
echo    ' I am study Linux now; ' >myfile.txt
解释:echo 后面跟  文件内容    " > "  代表重定向到    那个文件  或者其他
" > " 后的文件若存在 会 先清空 该文件的内容   后  写入 " > " 前面的 内容 ;
此 "  >  " 指令  操作  危险   ,在操作前  请先备份 ,在操作;
若想追加  则用   "  >>   "

例子: echo 'I drop in love river with you; '>>myfile.txt
cat 单行和多行文本追加
cat >myfile.txt 回车 后编辑输入 I love you in my life;在按 Ctrl + C 或 D 结束编辑;
[root@root myfile]# cat >>myfile.txt<<my : (多行追加实例:)

i love you in mylife;
do you want to mirry with me?
my(my 可以换成任意,但必须顶格写)
[root@root myfile]# cat myfile.txt (实例显示的结果:)
I studying Linux now;
i love you in mylife;
do you want to mirry with me?

特殊符号:   
> 或 (0\1\2)> 输出重定向:把前面的内容输入到后面,会清除原有的文件内容;(有 1 没有都一样)
例子 :>myfile.txt      (清空原有内容)    echo ' i love you ' >myfile.txt
>> 或  (0\1\2)>>     追加输出重定向:把前面的内容追加到后面,不会清除原有文件内容;
例子:echo 'I drop in love river with you; '>>myfile.txt
0< 或 <     输入重定向  : 把文件或文本内容   输入给  前面的命令;
例子:

[root@root myfile]# echo ' 1 2 3 4 '>myfile.txt
[root@root myfile]# cat myfile.txt
1 2 3 4
[root@root myfile]# xargs -n 2 <myfile.txt (xargs -n 2 理解为:2个一个单位分组)
1 2
3 4

0<< 或 <<   输入追加重定向

[root@root myfile]# cat >>myfile.txt<<my : (多行追加实例:)

i love you in mylife;
do you want to mirry with me?
my

特殊符号 < 、< <、>、>> 的说明:
箭头的指向代表数据的流向
数字的说明:
标准输入(stdin):        代码为0 ,使用 0< 或 0<< ,数据(输入的数据)流向从右到左

例子: cat &lt; myfile.txt

标准正常输出(stdout):代码为1 ,使用 1> 或 1>> ,数据(正确的数据)流向从左到右

例子: echo oldbook &gt;myfile.txt echo oldbooks &gt;&gt; myfile.txt

标准错误输出( stderr ):   代码为2 ,使用 2> 或 2>> ,数据(错误的数据)流向从左到右  

echo oldbook > myfile.text 2>b.txt 意思是:正确的数据输出到 myfile.txt,错误的输出到b.txt
cho odkbb > a.txt 2>'&' 意思是: 正确或者错误都输出到 a.txt
cho oooddd &>a.txt 意思是: 正确或者错误都输出到 a.txt
echo shuikm &>>a.txt 意思是:正确或者错误输出追加到 a.txt
xargs -n number <wenjian 分组

    echo 1 2 3 4 5 6 7 8 >a.txt
    例子:xargs  -n   3 <a.txt
cp  file  /temp  把某个文件或目录拷贝到 某个地方
    例子:  cp  a.txt  /temp/      相对路径拷贝
    [root@root myfile]# cp /myfile/a.txt  /my
    cp: overwrite `/my/a.txt'? y
绝对路劲拷贝      若有文件输入 " y " 覆盖;输入" n " 不覆盖
若拷贝  目录  需要 加参数  " -r   递归拷贝,用于复制目录 "
" -a  相对于 -p: 保持属性 ;-d:链接文件   -r  "
    例子:   cp  -r /myfile  /temp
    rm   remove    
    rm    -f(force)强制   -r(recuresive) 递归删除目录   /  mydirectory
    mv  移动文件和目录
    mv  file.txt  /temp    原位置文件就没有了
    find  查找   -type f (什么类型)  -name (叫什么名字)  " file.txt"   -exec(做什么动作)
    find  /myfile   -type f  -name  ' myfile.txt '    -exec  rm {} \;
上面例子是:找到/myfile 目录下file类型的myfile.txt 文件 ' {} 内容 '删除操作
find  /myfile   -type f  -name  "*.txt "  | xargs rm -f 
把查找的内容  放到一行上  进行删除
> ###   按照一个系统的流程练习总结:
>   
> [root@root ~]# cd /                                       进入根目录
> [root@root /]# ls                                     跟列表清单
> ---a.txt  boot  dev  home  lost+found  mnt  proc  sbin     srv  tmp  var
> ---bin    data  etc  lib   media       opt  root  selinux  sys  usr
> [root@root /]# mkdir /my                              创建my目录
> [root@root /]# ls                                     查看目录里有没有my
> ---a.txt  data  home        media  opt   sbin     sys  var
> ---bin    dev   lib         mnt    proc  selinux  tmp
> ---boot   etc   lost+found  my     root  srv      
> [root@root /]# touch /my/a.txt                            在目录里创建文件a.txt
> [root@root /]# ls /my                                 查看目录里有没有a.txt
> ---a.txt
> [root@root /]# echo '111 222 333 444                  向文件里输入内容编辑
>  555 666 444 555 666 
>  111 222 55 66  44  88  
>  552'>/a.txt                                          根目录下有该文件就写入,没有就创建
> [root@root /]# cat a.txt                              查看根目录下a.txt文件的编辑的内容
> ---111 222 333 444
> ---555 666 444 555 666 
> ---111 222 55 66  44  88  
> ---552
> [root@root /]# pwd                                        打印当前目录位置
> [root@root /]# vi a.txt                                   vi编辑器编辑内容
> ---111 222 333 444
> ---555 666 444 555 666
> ---111 222 55 66  44  88
> ---552
> ---111 222 333 444
> ---555 666 444 555 666
> ---111 222 55 66  44  88
> "a.txt" 6L, 115C written
> [root@root /]# cat a.txt                              查看编辑的内容
> ---111 222 333 444
> ---555 666 444 555 666 
> ---111 222 55 66  44  88  
> ---552   
> ---if you love that
> ---please  do something for it  
> [root@root /]# vim a.txt                              vim  编辑器编辑
> ---111 222 333 444
> ---555 666 444 555 666
> ---111 222 55 66  44  88
> ---552
> ---if you love that
> ---please  do something for it
    >  please  do something for it
> ---vim  to   do   this
> ---55556666
> [root@root /]# cat a.txt                              查看编辑的内容
> ---111 222 333 444
> ---555 666 444 555 666 
> ---111 222 55 66  44  88  
> ---552   
> ---if you love that
> -- please  do something for it
> ---vim  to   do   this 
> ---55556666
> ---8888 99999  
> [root@root /]# cho 123456 >>a.txt 2>&1                    错误数据是否和正确数据输出写入到了 a.txt 文件里
> [root@root /]# cat a.txt                              查看错误数据有没有写入
> ---111 222 333 444
> ---555 666 444 555 666 
> ---111 222 55 66  44  88  
> ---552   
> ---if you love that
    please  do something for it
> ---vim  to   do   this 
> ---55556666
> ---8888 99999  
> -bash: cho: command not found                             这里是写入的  错误数据输出值
> [root@root /]# xargs -n 4 <a.txt                  对a.txt 文件进行 分组整理   按每行 4 个数据分组
> ---111 222 333 444
> ---555 666 444 555
> ---666 111 222 55
> ---66 44 88 552
> ---if you love that
> ---please do something for
> ---it ----------- vim to
> ---do this 55556666 8888
> ---99999 -bash: cho: command
> ---not found
> [root@root /]# cp /my/a.txt  /                        cp 复制文件到 根目录
> ---cp: overwrite `/a.txt'? y                      根目录有  是否要覆盖  'y'  覆盖  'n' 不覆盖
> [root@root /]# mv /a.txt   /my                        mv 移动根目录的a.txt文件到/my目录下
> ---mv: overwrite `/my/a.txt'? y
> [root@root /]# cat /my/a.txt
> [root@root /]# cd /my                             
>  [root@root my]# cat a.txt
> [root@root my]# echo  1 2 3 4 5 6 7 8 >a.txt      对文件进行编辑
> [root@root my]# cat a.txt
> ---1 2 3 4 5 6 7 8
> [root@root my]# xargs -n 3 <a.txt                 按 3 分组整理
> ---1 2 3
> ---4 5 6
> ---7 8
>  [root@root my]# cp a.txt  /                          
[root@root my]# cd /
[root@root /]# ls
> &      boot  etc   lost+found  my    root     srv  usr
> ---a.txt  data  home  media       opt   sbin     sys  var
> ---bin    dev   lib   mnt         proc  selinux  tmp
> [root@root /]# rm /my/a.txt                               删除文件
> ---rm: remove regular file `/my/a.txt'? y
> [root@root /]# ls /my
> [root@root /]# find / -type f -name 'a.txt' -exec rm{} \; 按条件找到文件删除
> ---find: `rm/a.txt': No such file or directory
> [root@root /]# touch /my/b.txt                                    
> [root@root /]# ls /my
---b.txt
[root@root /]# find /my -type f -name 'b.txt' |xargs rm     按条件进行管道删除
 [root@root /]# ls /my**

转载于:https://blog.51cto.com/12838569/2388071

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值