Centos 03 基础命令
切换目录
cd ~ 切换到当前用户的家目录
cd - 切换到上一次的目录
上传与下载
支持包在Dial-up Networking Support选项里,没有装可以通过
1、yum install lrzsz -y
2、yum groupinstall "Dial-up Networking Support" -y
下载文件:
sz -y install.log(-y表示覆盖)
上传到服务器
rz -y 找到内容
只能上传下载文件
上传文件可以是任意文件
在使用远程工具上:root用户的命令后标记是#号,而一般用户的话则是$号
一些基础命令
ls -ld => 以长目录的格式显示目录,-a 显示目录的隐藏文件 touch file.txt => 新建文件,如果文件存在就改变文件的访问时间 pwd => 查看当前路径 cp a.txt /usr/ => 复制文件a.txt到/usr/路径 cp -a /etc/aaa/ /tmp/ => 拷贝目录到tmp文件夹下,正常用-a不用-r,a=dpr cp -r => 递归的拷贝目录 cp -p => 连同文档属性一起复制过去,而非使用默认属性 \cp /data/dandy.txt /test/ => 拷贝到另一个目录,覆盖文件,不提示是否覆盖 mv /data /root/ => 把根下面的data目录移到root的目录下面 xargs => 用于把find/ls的输出交给后面处理 ~ 当前用户家目录 | 管道;把前一个命令的输出交给另一个命令继续处理,两边不需要空格
cat命令
cat aa.txt => 查看文件内容 cat -n aa.txt => 显示行号
进阶
输入内容覆盖文件,注意这里是键入回车的一行,然后输入ctrl + d,特别是在mac上不是command + d!!!!
[dandy@centos7 ~]$ cat dandy.txt
a
b
c
[dandy@centos7 ~]$ cat > dandy.txt
1
2
3
^C
[dandy@centos7 ~]$ cat dandy.txt
1
2
3
追加进文件;>>代表追加;<<代表输入
[dandy@centos7 ~]$ cat >> dandy.txt << 11 > elina > dandy > taylor > 11 [dandy@centos7 ~]$ cat dandy.txt 1 2 3 elina dandy taylor [dandy@centos7 ~]$
另一种简单追加方法:同理是ctrl + d
[dandy@centos7 ~]$ cat >> dandy.txt
time1
time2
# 回车到空行 ctrl + d
[dandy@centos7 ~]$ cat dandy.txt
1
2
3
elina
dandy
taylor
time1
time2
[dandy@centos7 ~]$
echo命令
[dandy@centos7 ~]$ echo "hello" hello # 屏幕打印 echo {a..f} echo {1..7} => 打印输出、横向
进阶:
重定向,单行文本覆盖文件,有内容全部丢失
[dandy@centos7 ~]$ echo "write your words" > dandy.txt [dandy@centos7 ~]$ cat dandy.txt write your words [dandy@centos7 ~]$
追加重定向,追加到现有文件的结尾部分
[dandy@localhost ~]$ echo 'adding to the end' >> dandy.txt [dandy@localhost ~]$ cat dandy.txt write your words adding to the end [dandy@localhost ~]$
> 标准输入重定向
< 标准输出重定向
vi命令
a 或者i进入编辑模式 :q 保存 :wq! 强制保存 :set nu 显示行号 dd 删除当前行 yy 拷贝当前行 p 粘贴 2gg 定位行号 G 切换到文件尾 gg 切换到文件头
vimdiff dandy.txt dandy1.txt # 比较两个文件的差异
mv dandy.txt /data/ => 将dandy.txt文件移到/data/目录下,如果后面/data/变成/data/dandy111.txt就有了改名的功能 mv /data /usr/ => 将data文件目录移到/usr/目录里面 rm dandy.txt => 删除文件 rm -f dandy.txt => 强制删除 rm -r /data => 删除目录 rmdir data => 删除空目录 鸡肋的命令
find命令
find / -type f -name "dandy.txt" => 在/根目录查找 类型文件,名字cat find / -type f -name "dandy.txt" -exec rm -f {} \; => {}代表find找到的内容 -exec 到 \都是参数 rm -f {} ; bash 是特殊的意义,用反斜杠转义 find / -type f -name "test.txt" | xargs rm -f => xargs把查找出来的文件结果集,按行交给rm -f命令处理 find /root/ -type f -name "*.log" -mtime 5 | xargs rm -f => 5 是找到所有5天前4天后被更改的档案文件 modify time-4 是4天内被改的档案, +4 是4天后被改的档案。
查找文件内容
grep -v dandy test.txt => 过滤文件中包含dandy的行,并排除 grep dandy test.txt => 过滤出来文件中包含dandy的行 head -2 test.txt => 显示文件前两行;不接参数,默认显示前10行 tail -2 test.txt => 显示文件后两行;不接参数,默认显示后10行 tail -f test.txt => 监控文件结尾处的变化 sed -n /dandy/p test.txt => 取出包含dandy的一整行,取消其它行的输出 p是打印筛选的意思, -n表示取消默认输出或者取消原始输出 sed /^dandy/d test.txt => 把以dandy开头的行过滤掉 d代表删除 sed '/dandy/d' test.txt => 包含dandy的行删除,引号加不加没区别 awk /dandy/ test.txt => 过滤出来带dandy的行
创建目录
mkdir a b c => 创建多个文件夹 mk -p /data/test => 递归创建文件夹 tree /data => 查看data文件夹下的目录结构
查看命令路径
which cp => 查看cp的所在路径, whereis locate find
全路径执行命令
/usr/bin/cp /data/dandy.txt /tmp => 用全路径执行命令
别名alias
alias => 查看当前所有的别名 alias cp => 查看cp的别名 alias rm = 'echo "rm can not be executed."'
=> 修改别名 alias egrep='egrep --color=auto' alias fgrep='fgrep --color=auto' alias grep='grep --color=auto' alias l.='ls -d .* --color=auto' alias ll='ls -l --color=auto' alias ls='ls --color=auto' 如上 ll命令的意思就是ls命令加上-l参数 可以用unalias来取消别名,一般不改系统默认的别名,它具有一定的保护措施。 别名的作用: 1)通过给危险命令加一些保护参数,防止人为误操作 2)把很多复杂的字符串变成一个简单的字符串 系统别名的位置 cat ~/.bashrc # User specific aliases and functions
seq命令
seq 5 => 竖着打出1~5序列 seq -s " " 5 => -s指定分隔符空格,横着输出 1~5序列 seq 2 5 => 竖着打出2~5序列 seq 1 2 9 => 隔2个数输出 seq 5|tac => tac 反转内容输出 seq 100 >> dandy.txt => 产生100的序列追加进dandy.txt文件
提取文件中指定的行号
head -30 dandy.txt|tail -11 => 查找20~30行的内容输出 tail -81 dandy.txt|head -11 sed -n 20,30p dandy.txt => 取消其它行输出,打印20~30行 sed -n '20,30p' dandy.txt sed -n 30p dandy.txt => 输出打印第30行 awk '{if(NR>19&&NR<31) print $0}' dandy.txt => NR变量代表行号,如果>19, <30 $0 代表print整个列 '{}' 固定格式,执行内部命令
sed 擅长输出行
awk 擅长输出列
awk -F ":" '{print $1}' /etc/passwd => 输出打印文件第一列 -F ":" 分割参数 $1 第一列,$2第二列,$0 整行
替换文件内容
sed -i s#dandy#elina#g dandy.txt => s代表编辑替换,g代表全部替换 -i 插入或者写入原文件 find / -type f -name "dandy.txt" | xargs sed -i s#dandy#elina#g => 查找到所有的dandy.txt文件,并对每一个执行替换命令
不能忘本
cat /etc/redhat-release => 查看系统版本 uname -r => 查看系统内核 uname -m => 查看操作系统位数
快捷键
快捷键 tab => 补全命令或者路径 ctrl + c => 终止当前任务命令程序 ctrl + d => 推出当前用户环境,相当于exit、logout ctrl + a => 快速移动至行开头 ctrl + e => 快速移动到行结尾 ctrl + u => 不留痕迹的清楚 ctrl + r => 从历史记录查找命令 ! 165 => 执行历史记录里面的165行的记录 !! => 执行最近的命令 ! c => 调用最近以c开头的命令
此篇blog虽然全篇幅都是在讲命令,但也只是讲了其中的一部分命令的简单应用,之后还是会补充,不过不确定是在实战还是继续这样一种方式的篇幅。此时,这里给大家介绍几种自己查看命令使用方法的办法。
1、man 命令
2、命令 --help 或者 命令 -- h
3、搜索引擎
不必多说,你懂我懂大家懂。