一 文件复制及移动
1.命令 cp --------copy 的意思
格式 cp 选项 源文件 目标文件
a: 对于文件我们直接cp 文件 目标文件
假定我们在普通用户家目录下/home/lv
新建两个普通文件 touch 1.txt 2.txt
echo "sfsfsfsdf" >> 1.txt 随便写点数据进去
cp 1.txt 2.txt 此时会提示你是否覆盖,意思是,是否用
1.txt里面的内容替换2.txt里面的内容。这里启动了
了一个 -i 别名选项,用于同用户交互的安全选项。
which cp 会看到alias cp='cp -i'
cp 1.txt /media 把1.txt 复制到media目录下,如果media下没有同名文 件,直接复制,如果有会提示是否覆盖
b: -r 用来复制一个目录,同时会复制子目录及文件,是一个递归复制。是否覆盖原理同上。不带-r参数无法复制目录
- mv ----------move的意思
格式 mv 选项 源文件 目标文件
mv 就更简单了,内置别名-i 也是安全选项,其他参数用不到
mv 除过搬移文件外,常用的是重命名功能,就是把文件在同一目录下挪动一下,比如我把一个python程序临时保存在了2.txt文件里,这时后我想要运行
就可以 mv 2.txt 2.py 然后python 2.py 就可以二 文件查看
查询五件套, cat more less head tail
- 我们用的最多的是cat ,可以直接跟文件名差看内容
还有两个选项稍微留意下, -n 显示行号,-A显示所有东西出来,包括特殊字 符 ,cat我们经常会配合追加>> ,过滤grep 使用,例如可以:
cat /etc/passwd |grep 'home' >> 2.txt 我们可以得到普通用户信息 - cat的 倒装命令tac 可以倒叙显示内容
- more 当问价内容很多页时,cat只显示最后一屏,这时后more可以登场了,ctrl b 往前翻页, ctrl f或者空格键往后翻页,到结尾自动退出。提前退出q
- less ,比more好的地方是,可以一直翻页看,想退出再退。
less 还有查询功能,按下/,然后输入查询字符,按n键就可以依次向后查找,如果你按下?,输入字符,就是向前查找 - head 查询前10行,tail查询末10行,两个命令都可以带-n参数,显示前几行, 或后几行 可以写为head -n4 /etc/profile 也可以写为 head -4 /etc/profile
- tail -f 选项可以动态显示文件末10行,以后分析日志很有用。head没有该选项,可以开两个终端,验证一下。
小结一下, 一般小范围查询用cat,要精缺查看前几行后几行用head,tail
文件很大用less,动态显示用tail,配合管道更方便例如
cat -n /etc/profiel |head -18 带行号显示前18行三 环境变量PATH
如果一定要问环境变量是什么,我的知识储备还不够正面回答这个问题,那我先把百度百科拿过来,方便你看
https://baike.baidu.com/item/%E7%8E%AF%E5%A2%83%E5%8F%98%E9%87%8F/1730949?fr=aladdin
当然我还要举一个例子,说一下我的理解,如果你在windos下安装过python,那么你应该印象深刻,当我们在cmd下要启动python解释器时,必须把python.exe 这个文件路径加入到windos环境变量如图:
否则你无法调用python,我不是让你立马回去装python,我只是想从这个操作中去理解,我们把一个应用程序的绝对路径放在了系统指定的位置,也就是系统指定给我们用的环境,然后建立了连接。
我们回到linux 环境,进一步认识,为什么我们直接可以输入 ls cd find等等好多命令,计算机怎么找到这些命令的,从哪里找的, 就是从环境变量找的.
echo $PATH 查看环境变量
通常有五个 路径两个sbin 三个bin
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
我们做一个小实验 理解下环境变量
which ls 查看下ls位置, /usr/bin/ls
cp /usr/bin/ls /tmp
mv /tmp/ls ls1
PATH=$PATH:/tmp/
执行ls1 发现等价于ls,如果不添加环境变量, 提示找不到ls1,除非你带绝对路径 /tmp/ls1 才可以执行
如果要让该环境变量永久生效,可以编辑/etc/profile 文件添加PATH=$PATH:/tmp/