Linux基本命令 文件管理 上部

第1章 Linux入门相关

目录基本知识

Linux一切从根开始

倒挂的树形结构

对路径与相对路径

绝对路径: 从根开始的路径

比如:/oldboy  /data   

 相对路径: 没有从根开始的路径 

比如:data  oldboy   

1.1 创建目录 /data

涉及命令 mkdir   ls  cd   pwd

ls -l          参数 l 显示详细信息

[[email protected] ~]# mkdir /data          创建目录
[[email protected]-50 ~]# ls -l /data/         查看目录里的内容
total 0
[[email protected]-50 ~]# cd /data/            进入到这个目录
[[email protected]-50 data]# pwd               查看当前在哪个位置
/data
[[email protected]-50 data]#

 

 

1.2 创建文件

涉及命令touch

[[email protected] ~]# touch /data/oldboy.txt        创建文件
[[email protected]-50 ~]# ls /data/                     查看目录下的文件
oldboy.txt
[[email protected]-50 ~]# 

 

1.3 为文件增加内容

1.3.1 方法一 vi 

涉及命令 vi  cat  以及vi编辑器下的一些按键

以后常用的是vim  vim相当于vi功能更多

vi   记事本

vim  notepad++

##1 [[email protected] ~]# vi /data/oldboy.txt   进入编辑模式
##2 进入编辑模式   按键I  输入I am studying linux
##3 进行编辑
##4 编辑完成  退出编辑模式  esc
##5 保存并退出  :wq  (英文模式下的符号:)
    write quit
    :q! 强制退出不保存
[[email protected]-50 ~]# cat /data/oldboy.txt  查看文件内容
I am studying linux
[[email protected]-50 ~
###:wq    write  quit
###:q     退出不保存
###:q!    强制退出不保存

 

1.3.2 方法二 echo

[[email protected] ~]#echo "www.lidao.com"                      显示到屏幕
www.lidao.com
[[email protected]-50 ~]#echo "www.lidao.com" >> /data/oldboy.txt  将内容写入到文件
[[email protected]-50 ~]#cat /data/oldboy.txt                       查看文件的内容
I am studying linux.

 

1.3.3 方法三cat

EOF  end of file
[[email protected] ~]# cat >>/data/oldboy.txt<<EOF
> 123
> 456
> 789
> EOF

 

1.4 复制(拷贝)目录

涉及命令cp   Linux大多命令不能直接对目录进行操作 所以需要加参数 

-a  ==  -pdr

-p 复制的时候保持属性不变

-d 软连接相关

-r 递归

[[email protected] ~]# cp -r /data/   /tmp/   将/data复制到/tmp
[[email protected] ~]# ls -l /tmp/             查看/tmp下内容
total 8
drwxr-xr-x. 2 root root 4096 Jul 11 01:50 data
-rw-r--r--. 1 root root  254 Jul 11 01:42 oldboy.txt
-rw-------. 1 root root    0 Jul 10 18:16 yum.log

 

第2章 重定向(必会!)

漏斗--重定向符号

Linux基本命令 文件管理 上部

2.1 输出重定向

>> 或 1>>  追加重定向 把信息追加到文件的结尾

>  或 1>   重定向符号 先清空文件内容 追加新的内容

[[email protected] ~]# echo "111" >> /data/linux.txt
[[email protected] ~]# echo "111" >> /data/linux.txt
[[email protected] ~]# echo "111" >> /data/linux.txt     >>追加输出   把信息追加到文件的结尾
[[email protected] ~]# cat /data/linux.txt
111
111
111
[[email protected] ~]# echo "111" > /data/linux.txt   > 输出   清空文件内容  然后写入新的内容
[[email protected] ~]# cat /data/linux.txt
111
[[email protected] ~]#

 

2.2 错误输出重定向

2>>        错误追加重定向  错误信息被追加到文件内容

2>         错误重定向 先清空文件内容 错误信息被追加到文件内容

[[email protected] ~]# lidao  2>>/data/oldboy.txt
[[email protected] ~]# lidao  2>>/data/oldboy.txt
[[email protected] ~]# lidao  2>>/data/oldboy.txt   2>> 错误追加重定向  错误信息被追加到文件内容结尾  
[[email protected] ~]# cat /data/oldboy.txt         查看内容
-bash: lidao: command not found
-bash: lidao: command not found
-bash: lidao: command not found
-bash: lidao: command not found
[[email protected] ~]# lidao  2>/data/oldboy.txt     2> 先清空文件内容 错误信息被追加到文件内容
[[email protected] ~]# cat /data/oldboy.txt          查看内容
-bash: lidao: command not found
[[email protected] ~]#

 

2.3 错误正确都记录在文件中

把正确信息和错误信息 都记录到 文件中

2>&1固定搭配  将 正确的 错误的信息都添加到文件

[[email protected] ~]# echo "222" >> /data/oldboy.txt 2>&1   正确的
[[email protected]-50 ~]# cho "222" >> /data/oldboy.txt 2>&1    错误的
222                      
-bash: cho: command not found
[[email protected]-50 ~]#

[[email protected]-50 ~]# linux >> /data/oldboy.txt 2>&1
[[email protected]-50 ~]# echo "11" >> /data/oldboy.txt 2>&1
-bash: linux: command not found
11
[[email protected]-50 ~]#

 

 

2.4 输入重定向

<  或 0<   输入重定向  从某个文件中读取数据

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

涉及命令  xargs

          参数 -n            -n加数字 分为几组

[[email protected] ~]# echo  "1 2 3 4 5 6 7">/data/lidao.txt    配置模拟环境  
[[email protected] ~]# cat /data/lidao.txt                      查看
1 2 3 4 5 6 7
[[email protected] ~]# xargs -n2 < /data/lidao.txt              < 输入重定向  从某个文件中读取数据
1 2
3 4
5 6
7
[[email protected] ~]# xargs -n3 < /data/lidao.txt               -n加数字
1 2 3                                                         分为一行几列
4 5 6
7
[[email protected] ~]#

 

<<    追加输入重定向

向文件中追加多行

cat >>/data/oldboy.txt<<EOF
I
am
studying
linux
EOF