2019-07-08Linux文件和目录常用指令

// 查看目录内容
ls(ll)
// 切换目录
cd
// 创建和删除操作
touch//创建文件
rm
mkdir  //创建文件夹
// 拷贝和移动文件
cp
mv
// 查看文件内容
cat
more
grep
// 其他
echo
重定向 > 和 >>
管道 |

自动补全

tab键,能自动补全目录或文件名

上下光标

上下光标能切换之前用过的命令

退出

ctrl+c,另起一行,重写编写

ls命令说明

ls -a 显示所有文件和文件夹,包括隐藏文件

隐藏文件:文件名以.开头即可

ls -l 以列表的形式显示详细文件信息
ls -l -h 更直观的查看文件大小(可以缩写成ls -lh,当然还可以ls -lha,选项连着写)

ls通配符的使用

\*    代表任意数量的字符 例如:ls 1*,找到的是1开头的文件
? 代表一个字符,类似mysql中模糊查询中的_
[]  指定字符组,例如[1-4]abc.txt表示查找1abc.txt,2abc.txt,3abc.txt,4abc.txt

cd 常用选项

cd - 在最近的两次目录间来回切换
cd .. 切换到上级目录

相对路径绝对路径

cd /home/abc/xyz 绝对路径
cd abc 相对路径

touch简介

touch test.txt 若不存在该文件,会创建,否则,更新最后的修改日期

mkdir常用操作

mkdir -p a1/b1/c1/d1 创建多级目录
新建目录的名称不能与当前目录中已有的目录或文件同名

rm指令

rm指令删除的文件不能恢复
rm -r 可以删除多级目录,例如rm -r a1,a1及其子目录全删除
rm -f 可以强制删除文件,不管是否存在

tree(CentOS中安装可能会出现网络问题)

vi /etc/sysconfig/network-scripts/ifcfg-eth0 进入对应设备信息文件
i 表示 insert 修改
ONBOOT=YES
ESC
:wq!保存文件后退出 (:q!强制退出)

重启服务

service network restart
安装tree
ubuntu:sudo apt-get install tree
centos:yum -y install tree
tree 当前目录结构的树状图
tree [目录名] 指定目录树状图结构
tree -d 只显示目录,不显示文件

拷贝和移动文件

拷贝
# 将/home/abc.txt拷贝到当前文件下名为abc.txt,.代表当前目录
cp /home/abc.txt ./abc.txt
# 若不需要改名字,可以简写成
cp /home/abc.txt .
# -i 选项,复制时会有提示是否覆盖同名文件
cp -i /home/abc.txt . 
注意:cp不能直接复制文件夹,需要带-r选项
cd -r ./abc /home/ttt

移动

# 将a文件夹下的123.txt移动到当前目录
mv a/123.txt .
# 会有覆盖提示
mv -i a/123.txt .
# 移动的目标目录如果与被移动的文件在同一个目录,会重命名
mv ./123.txt .

查看文件内容

cat 文件,能够看到所有内容
more 文件,可以看到一部分,需要使用空格看其他内容
空格显示手册下一屏
Enter一次滚动一行
b回滚一屏
f前滚一屏
q退出
# 可以常看行号
cat -b 文件,忽略空行
cat -n 文件,输出所有行编号

grep搜索工具

# 在abc.txt查找as
grep as abc.txt
grep -n as abc.txt 会同时显示行号
grep -v as abc.txt 去反,查出不包含as的行,vn连用显示行号
grep -i as abc.txt 忽略大小写
grep -i "hello linux" abc.txt 有空格,需要加双引
grep ^f abc.txt 行首匹配,以f开头的
grep f$  abc.txt 行尾匹配,以f结尾的

echo及重定向

# 覆盖原文件内容
echo Hello > a.txt
# 追加原文件内容
echo Hello >> a.txt

管道符号 |

linux可以将一个命令的输出作为另一个命令的输入
ll -a | more 分屏显示
ll -a | grep do 显示列表并查询有do的文件

你可能感兴趣的:(2019-07-08Linux文件和目录常用指令)