linux学习(七)环境变量、cp、mv、cat,less,more,head,tail
一、环境变量
环境变量其实就是$PATH:
[root@iZ25lzba47vZ ~]# echo $PATH
/usr/local/nginx/sbin:/usr/local/php/bin:/usr/local/mysql/bin:/usr/local/node/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
包含在环境变量里的命令不需要写全路径,只需要写文件名就可以了:
[root@iZ25lzba47vZ ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
我们经常用的ls命令其实就是执行的/usr/bin/ls,因为/usr/bin在环境变量里,所以直接可以执行ls。
如果我们想在环境变量里增加路径,可以用两种方法:
1.临时修改
[root@iZ25lzba47vZ ~]# PATH=$PATH:/tmp/
[root@iZ25lzba47vZ ~]# echo $PATH
/usr/local/nginx/sbin:/usr/local/php/bin:/usr/local/mysql/bin:/usr/local/node/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp/
2.永久修改
/etc/profile文件会在每次打开终端或者重启时执行,所以可以加在这里:
[root@iZ25lzba47vZ ~]# echo 'PATH=$PATH:/tmp/' >> /etc/profile
[root@iZ25lzba47vZ ~]# tail /etc/profile
else
. "$i" >/dev/null
fi
fi
done unset i
unset -f pathmunge
export PATH=/usr/local/nginx/sbin:/usr/local/php/bin:/usr/local/mysql/bin:/usr/local/node/bin:$PATH
PATH=$PATH:/tmp/
二、cp命令
cp命令用来复制文件或者目录。
复制文件:
[root@iZ25lzba47vZ ]# ls
a.txt
[root@iZ25lzba47vZ ]# cp a.txt b.txt
[root@iZ25lzba47vZ ]# ls
a.txt b.txt
复制目录:
[root@iZ25lzba47vZ ]# ls
a.txt b.txt
[root@iZ25lzba47vZ ]# cp -r .bak
[root@iZ25lzba47vZ ]# ls
.bak a.txt b.txt
注意,在复制目录时,如果目标目录存在,会把复制的目录复制到存在的目录下面:
[root@iZ25lzba47vZ ]# cp -r .bak/
[root@iZ25lzba47vZ ]# tree .bak/
.bak/
└── directory, files
常用命令:
!$,上一条命令的最后一个单词,比如上面的cp -r 1 1.bak/里的1.bak。
如果还想使用上一条命令,可以:
tree !$
我们which cp看一下:
[root@iZ25lzba47vZ ~]# which cp
alias cp='cp -i'
/usr/bin/cp
发现cp是cp -i的缩写。-i的意思就是说,如果复制目标文件和那个目录下有重名有提示:
[root@iZ25lzba47vZ ~]# cd
[root@iZ25lzba47vZ ]# ls
a.txt demo
[root@iZ25lzba47vZ ]# cd ..
[root@iZ25lzba47vZ ~]# ls
.ipt Application iptables.bak oneinstack shellscripts
.cap .txt a.php Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
[root@iZ25lzba47vZ ~]# cp .cap /a.txt
cp: overwrite ‘/a.txt’? y
如果不要提示,直接用绝对路径:
[root@iZ25lzba47vZ ~]# /usr/bin/cp .cap /a.txt
[root@iZ25lzba47vZ ~]#
三、mv
mv命令用来移动文件或者目录。它的语法和cp大致一样,只是它是“剪切”,如果在同一个目录下移动,那么它就是“重命名”。
重命名:
[root@iZ25lzba47vZ ~]# ls
.ipt Application iptables.bak oneinstack shellscripts
.cap .txt a.php Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
[root@iZ25lzba47vZ ~]# mv
[root@iZ25lzba47vZ ~]# ls
.ipt .txt Application iptables.bak oneinstack shellscripts
.cap a.php Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
移动文件:
[root@iZ25lzba47vZ ~]# tree directories, files
[root@iZ25lzba47vZ ~]# mv .txt /
[root@iZ25lzba47vZ ~]# tree └── .txt
移动目录:
[root@iZ25lzba47vZ ~]# tree directories, files
[root@iZ25lzba47vZ ~]# ls
.ipt a.php Document.pdf npm-debug.log ruanwenwu syncwithgit.sh
.cap Application iptables.bak oneinstack shellscripts
[root@iZ25lzba47vZ ~]# mv /
[root@iZ25lzba47vZ ~]# tree └──
└── .txt
同样,我们可以看看which mv:
root@iZ25lzba47vZ ~]# which mv
alias mv='mv -i'
/usr/bin/mv
发现和cp一样有个-i参数,代表重复的话就提示:
[root@iZ25lzba47vZ ~]# cp a.php /
[root@iZ25lzba47vZ ~]# tree ├──
│ └── t.txt
├── .bak
│ └──
├──
│ └──
│ └── t.txt
├── a.php
├── a.txt
└── b.txt directories, files
[root@iZ25lzba47vZ ~]# mv a.php /
mv: overwrite ‘/a.php’?
四、cat
cat用来查看全部文件,没什么好说的:
[root@iZ25lzba47vZ ~]# cat a.txt
i love linux!
五、more
more用来一屏一屏的看文档,在查看比较长的文档时用,不过它完全可以被less代替。
[root@iZ25lzba47vZ ~]# more /etc/passwd
root:x:::root:/root:/bin/bash
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin
adm:x:::adm:/var/adm:/sbin/nologin
lp:x:::lp:/var/spool/lpd:/sbin/nologin
sync:x:::sync:/sbin:/bin/sync
shutdown:x:::shutdown:/sbin:/sbin/shutdown
halt:x:::halt:/sbin:/sbin/halt
mail:x:::mail:/var/spool/mail:/sbin/nologin
operator:x:::operator:/root:/sbin/nologin
games:x:::games:/usr/games:/sbin/nologin
ftp:x:::FTP User:/var/ftp:/sbin/nologin
nobody:x:::Nobody:/:/sbin/nologin
dbus:x:::System message bus:/:/sbin/nologin
polkitd:x:::User for polkitd:/:/sbin/nologin
avahi:x:::Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
avahi-autoipd:x:::Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin
libstoragemgmt:x:::daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin
ntp:x::::/etc/ntp:/sbin/nologin
abrt:x::::/etc/abrt:/sbin/nologin
postfix:x::::/var/spool/postfix:/sbin/nologin
sshd:x:::Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x::::/var/lib/chrony:/sbin/nologin
nscd:x:::NSCD Daemon:/:/sbin/nologin
tcpdump:x::::/:/sbin/nologin
mysql:x::::/home/mysql:/sbin/nologin
www:x::::/home/www:/sbin/nologin
memcached:x::::/home/memcached:/sbin/nologin
systemd-bus-proxy:x:::systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:::systemd Network Management:/:/sbin/nologin
saslauth:x:::Saslauthd user:/run/saslauthd:/sbin/nologin
ruanwenwu:x::::/home/ruan
按空格向下翻,按ctrl+b往上翻。
六、less
上面已经说了,less可以代替more,它的功能有上下翻页,搜索,一行一行上翻下翻。
上翻:ctrl+b
下翻:ctrl+f / 空格
方向键:一行一行翻
/keyword 搜索关键词,n向下翻查找,N向上翻查找
?keyword搜索关键词,n向上翻查找,N向下翻查找
七、head
查看头10行,可以查看头任意行:
[root@iZ25lzba47vZ ~]# head -n !$
head -n /etc/my.cnf
[client]
port =
socket = /tmp/mysql.sock
八、tail
查看结尾10行,也可以查看尾任意行:
[root@iZ25lzba47vZ ~]# tail -n !$
tail -n /etc/my.cnf
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
tail还可以动态的查看文件的写入:
[root@iZ25lzba47vZ ~]# tail -f !$
tail -f /etc/my.cnf [mysqldump]
quick
max_allowed_packet = 100M [myisamchk]
key_buffer_size = 8M
sort_buffer_size = 8M
read_buffer = 4M
write_buffer = 4M
linux学习(七)环境变量、cp、mv、cat,less,more,head,tail的更多相关文章
- centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask 第四节课
centos 目录文件管理 mkdir,rm,touch,误删文件extundelete,cp,mv,cat,more,less ,head,tail,chown,chmod ,umask 第四节课 ...
- linux 学习:环境变量设置
一.临时环境变量 临时环境变量,只对当前打开的shell生效,shell关闭后,环境变量失效. 设置方法一: 分两步 MYPARA=hello export MYPARA 设置方法二:一步完成 exp ...
- Shell学习之环境变量配置文件(三)
Shell学习之环境变量配置文件 目录 环境变量配置文件简介 环境变量配置文件作用 其他配置文件和登录信息 环境变量配置文件简介 环境变量配置文件简介 环境变量配置文件中主要是定义对系统操作环境生效的 ...
- NodeJS学习:环境变量
简介 环境变量(environment variables) 不属于 NodeJS 范畴,它是操作系统用于设定执行环境的参数.会在程序运行时传递给应用程序. NodeJS 获取环境变量,是通过 glo ...
- (四)linux的常用环境变量及设置
一.为什么要设置环境变量 1.环境变量能解决什么问题? 你是否经历过输入$python命令后,屏幕上打印出python:command not found的尴尬:每一次都要输入$/home/tools ...
- linux配置java环境变量(详细)
linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...
- linux配置java环境变量
linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...
- Linux里设置环境变量的方法(export PATH)
1.动态库路径的设置 Linux下调用动态库和windows不一样.linux 可执行程序是靠配置文件去读取路径的,因此有些时候需要设置路径 具体操作如下 export LD_LIBRARY_PATH ...
- [转]在Linux里设置环境变量的方法
在Linux里设置环境变量的方法(export PATH) 一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量.例如我的mips-linux-gcc编译器在“/opt/a ...
- hadoop搭建杂记:Linux下JDK环境变量的设置(三种配置环境变量的方法)
Linux下JDK环境变量的设置(三种配置环境变量的方法) Linux下JDK环境变量的设置(三种配置环境变量的方法) ①修改/etc/profile文件 如果你的计算机仅仅作为开发使用时推荐使用这种 ...
随机推荐
- 基于注解方式实现Aop
开启注解扫描 <context:component-scan base-package="aopSpring"></context:component-scan& ...
- NSTimer、CADisplayLink 内存泄漏
NSTimer.CADisplayLink 内存泄漏 内存泄漏的原因 CADisplayLink 要用 Taget 和 Selector 初始化,NSTimer 也可以用类似的方法初始化.这样初始化之 ...
- 基于 Electron 的爬虫框架 Nightmare
作者:William 本文为原创文章,转载请注明作者及出处 Electron 可以让你使用纯 JavaScript 调用 Chrome 丰富的原生的接口来创造桌面应用.你可以把它看作一个专注于桌面应用 ...
- Delphi中 StrToIntDef函数的用法
Delphi中 StrToIntDef函数的用法:比如我要判断一个文本框里输入的字符串能不能转换为integer类型,如果能,则返回转换后的整型数据,如果不能,则返回整数0,那么我就可以用strtoi ...
- fitnesse - Variables and Symbols
fitnesse - Variables and Symbols 2017-09-30 目录 1 Variables(静态变量) 1.1 定义及使用 1.2 Variable作用域 1.2. ...
- 入门VMware Workstation下的Debian学习之Vim简单使用(三)
什么是Vim? Vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计. Vim是从vi发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广 ...
- webpack——devtool里的7种SourceMap模式
我们先来看看文档对这 7 种模式的解释: 模式 解释 eval 每个module会封装到 eval 里包裹起来执行,并且会在末尾追加注释 //@ sourceURL. source-map 生成一个S ...
- ASP.NET没有魔法——ASP.NET MVC 与数据库之MySQL
之前介绍了My Blog如何使用ADO.NET来访问SQL Server获取数据.本章将介绍如何使用My SQL来完成数据管理. 在使用My SQL之前需确保开发环境中安装了My SQL数据库和Con ...
- Vue与swiper想结合封装全屏轮播插件
项目需求介绍: 1.页面图文混排, 2.点击图片后全屏展示图片,并在底部显示文字,如果没有则不显示 3.关闭全屏后依然停留在上次浏览的位置 4.浏览图片时,不管点击的哪张图片,全屏展示的时候也要显示这 ...
- c# Linq操作XML,查找节点数据
/*查找XML*/ var filePath = Server.MapPath("~/xml/sample.xml"); XDocument doc = XDocument.Loa ...