admin 管理员组文章数量: 887021
1.链接文件: 暂时理解为快捷方式--link
ln - make links between files
-s, --symbolic 创建符号链接(软链接)soft
make symbolic links instead of hard links
ln -s hunan xiang #hunan为源文件名 xiang为链接文件名
ln -s guangdong yue #guangdong为源文件名 yue为链接文件名
补充知识
pwd -P #-P, --physical 物理路径, 消除所有的符号链接,显示真正的路径
#$?代表上一条命令的返回值
#0 代表上一条命令执行成功
#非0 代表上一条命令执行失败
2.alias--给命令定义别名 unalias--给命令消除别名
alias #查看有哪些别名在shell里定义的
alias c='clear' #临时自定义c是clear的别名 ,clear是操作系统里的命令,自定义的别名不要操作系统里的已经存在的命令冲突,不然会导致linux系统里的命令不能使用
alias mk='mkdir -p' #临时定义一个别名,这个命令可以使用
#作用: 提示效率,相当于一个命令的快捷键
永久定义一个别名,需要进入/root/.bashrc
vim /root/.bashrc
# .bashrc
# User specific aliases and functions
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'
alias c='clear'
alias mk='mkdir -p'
# Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
在当前终端里执行/root/.bashrc脚本文件
脚本文件是一个存放了很多linux命令的文件,可以运行里面的命令
脚本文件在执行的时候,会从第1行命令开始往下执行,一条一条去执行
source /root/.bashrc
unalias 取消别名
unalias c #取消别名c
unalias mk #取消别名mk
3.du 统计文件或者文件夹的大小
du - estimate file space usage
disk usage
-s, --summarize 汇总
display only a total for each argument
-h, --human-readable
print sizes in human readable format (e.g., 1K 234M 2G)
du -sh /usr
du -s -h /usr
du -hs /usr
4.rm : 删除命令,非常危险的命令 ---》删除任何东西的时候,反问自己,是否还需要,是否有备份
rm - remove files or directories
-f, --force 强制执行
ignore nonexistent files and arguments, never prompt
-r, -R, --recursive 递归
remove directories and their contents recursivelyrm 太危险了,删除文件
执行rm命令的是,背后我帮做一个备份,剪切到一个文件夹里,看起来像删除了
实现windows里的回收站的功能
rm -->mv -->/backup
rm -rf /aa #这个命令会强制删除/aa文件夹里面的所有文件,以及下级文件
rm -rf /* #非常危险,会删除根目录下的所有文件
在 Linux 系统中,执行rm -rf /是极其危险的操作,因为它会强制删除根目录(/
)下的所有文件和目录,包括系统文件和应用数据,这会导致系统崩溃并且无法启动。
如果你的目的是清理系统或删除某些文件,请确保你完全理解命令的作用,并且只在必要时使用。对于删除文件或目录,建议使用更安全的命令或方法,比如使用 rm
命令时加上 -i
选项进行确认,或者手动检查和删除文件。
如果你已经执行了这个命令,并且系统已经受到影响,你可能需要从备份中恢复数据,或者重新安装操作系统来修复系统。
rm -rf *#这个命令也非常危险,会删除当前文件夹里面的所有文件
执行rm -rf *命令会删除当前目录下的所有文件和子目录,并且不会有任何确认提示。这是一个非常危险的操作,因为它会永久性地删除所有选中的文件和目录,且无法恢复。
在执行此类命令之前,请务必确保你完全理解其后果,并且已经做好了充分的备份。如果你只是想删除某些特定的文件或目录,请确保你的命令指向的是正确的目标,而不是使用通配符(如 *
)来选择所有文件和目录。
如果你不小心执行了这个命令,并且删除了重要文件,你可能需要从备份中恢复,或者尝试使用数据恢复工具来恢复删除的文件。但是,请注意,数据恢复并不总是成功的,特别是如果删除的文件所在的磁盘空间已经被新数据覆盖。
touch peng{1..100}
rm -rf peng? #删除文件名以peng开头后面接一个字符串的文件
rm -rf peng?? #删除文件名以peng开头后面接2个字符串的文件
rm -rf peng* #删除文件名以peng开头后面任意的文件
rm -rf * #删除当前目录下的所有的文件和文件夹,隐藏文件和文件夹不删除
补充知识,通配符:
通配符
* 代表任意个任意字符串
? 代表一个任意字符串
5.cp 复制文件和文件夹
cp a.txt peng#a.txt表示源文件,peng是目的地
cp -r peng pengyaqin#复制文件夹到文件夹里 -r 递归复制
cp peng* changsha -r#表示复制已peng开头的文件,复制到changsha
cp a.txt changsha/b.txt#复制、粘贴重命名一步到位
cp /etc/hosts . -r#将/etc/hosts使用递归复制,复制到当前文件
6.mv - - move (rename) files
1.重命名
当后面接的文件或者文件夹的名字不存在的时候,就是重命名
2.移动(剪切)
当后面接的文件夹的名字存在的时候,就是移动
重命名
mv zhijiangtv/ zhejiangtv#将zhijiangtv改名为zhejiangtv
移动
mv cs.txt hunantv#将cs.txt移动到hunantv文件夹中
对通配符的支持
mv cs*.txt hunantv#将所有以cs开头的txt文件,移动到hunantv
7.对文件做判断
[ -e /etc/hosts ] #判断/etc/hosts文件是否存在 exist
[ -d /etc/hosts ] #判断/etc/hosts是否是目录 directory
[ -f /etc/hosts ] #判断/etc/hosts是否是文件 file
8.重定向
&>重定向到/dev/null 不影响命令的返回值
echo "hello,world" >cs.txt#将hello,world写入cs.txt,并创建cs.txt
>sc.txt #清空文件里的内容
9.cut 截取 -c 截取字符串 character
mkpasswd - generate new password, optionally apply it to a user
-l 长度 the length of the password
-d the minimum number of digits 数字的个数
-c the minimum number of lowercase alphabetic characters 小写字母的个数
-C the minimum number of uppercase alphabetic characters 大写字母的个数
-s the minimum number of special characters 特殊字符的个数
echo $RANDOM|sha256sum |cut -c 10-19#$RANDOM 生成的是一个在一定范围内的整数(通常是 0 到 32767),将这个值传递给sha256sum 进行哈希,截取其中第10位到19位
mkpasswd -l 10 -d 2 -s 2#-l 10指定密码长度为10个字符,-d 2表示密码中至少包含2个数字,-s 2表示密码中至少包含2个特殊字符
10.文件处理工具
vim的末行模式
:set number 显示行号
:set nu 显示行号
:set nonu 不显示行号
cat - concatenate files and print on the standard output
cat -n /etc/passwd #查看文件的内容,并且显示行号
cat user_password.txt for.sh cs.txt #将3个文件里的内容连接起来一起输出到屏幕上
cat user_password.txt for.sh cs.txt >3.txt #将3个文件里的内容保存到3.txt文件里
#here document的用法: 文档就在这里 ---》生成一个指定内容的文件
cat >changsha.txt <<EOF
> xixi
> haha
> wawa
> yaya
> end
> EOF
#cat 是命令
#>changsha.txt 帮助产生一个文件changsha.txt --》会清空changsha.txt文件的内容
#<<EOF 输入的内容遇到EOF的时候,表示要结束输入 end of file
使用脚本gen_peng_info.sh,来实现一下here document
#!/bin/bash
#生成文件feng_info.txt
cat >feng_info.txt <<EOF
feng de yong
sanchuang
furongqu
changsha
EOF
cat feng_info.txt
echo "脚本执行完毕"
bash gen_feng_info.sh
head 默认会显示头10行
tail 默认会显示尾10行
tail -n 2 取最后2行
tail -n -2 取最后2行
tail -2 取最后2行
head -3 /etc/passwd#显示/etc/passwd文件的前3行内容。
head -n 3 /etc/passwd#同样用于显示/etc/passwd文件的前3行内容,-n选项后面跟数字,明确指定要显示的行数。
cat -n /etc/passwd | head -15 | tail -11#首先使用cat -n给/etc/passwd文件的每一行加上行号,然后通过head -15取前15行,最后通过tail -11取这15行中的最后11行。
head -8 /etc/passwd | tail -1#先取/etc/passwd文件的前8行,然后从这8行中取最后1行,即第8行。
tail -n +2#显示文件从第2行开始到末尾的所有内容。
df -Th | tail -n 2#先执行df -Th查看磁盘使用情况,并通过人类可读的格式显示,然后通过tail -n 2取结果的最后2行。
df -Th | tail -2#与上一个命令作用相同,-2是-n 2的简写,同样用于取结果的最后2行。
tail -f /var/log/secure#用于实时跟踪/var/log/secure文件的新增内容。当文件有新内容写入时,tail命令会立即显示。
tailf /var/log/secure#tailf命令与tail -f功能相同,也是用于实时跟踪文件的新增内容。tailf在某些系统中可能作为tail -f的别名存在。
more 分页显示: 一页一页的显示 --》慢慢的查看
上一页,下一页
enter 一行一行往下看
空格 下一页
b 上一页 back
q 退出 quit
ctrl+c 强行终止less分页显示: 一页一页的显示 --》慢慢的查看
上一页,下一页
enter 一行一行往下看
空格 下一页 pagedown
b 上一页 back pageup
q 退出 quit
ctrl+c 强行终止
less不会自动退出,显示完所有的内容
11.locate
locate命令是到数据库文件里去查找文件在哪里的,并不是直接到/目录下,一个一个的查找的
最新的数据没有,需要先updatedb更新数据库的数据
版权声明:本文标题:linux里面的常用命令4 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1724802715h819947.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论