linux的简单命令学习
来源:互联网 发布:mac 虚拟机 win10 好吗 编辑:程序博客网 时间:2024/06/06 04:07
linux命令之 ls
-l --list use a long listing format 列出文件的名称,权限,所有者,文件大小等详细信息 -r --reverse reverse order while sorting 相反顺序排序 -R --recursive list subdirectories recursively 循环列出子目录 -i -- 查看一个文件或者目录的inode
linux命令之 cd
cd :进入用户家目录cd / :进入系统根目录cd ../ :进入上一级目录 cd - :返回进入此目录之前所在的目录cd !$ :将上一个命令的参数作为cd参数使用
linux命令之 mv (move/rename files)
-b --backup make a backup of each existing destination file 如果目标文件已存在,覆盖前先备份-f --force do not prompt before overwriting 如果目标文件已存在,不会询问直接覆盖-i --interactive(交互式,默认) prompt before overwrite 如果目标文件已存在,会询问是否覆盖
eg:
mv log1.txt log2.txt (修改名称,如果已存在log2.txt则会询问是否覆盖)mv log2.txt Desktop/ (移动文件到桌面,如果桌面已存在log2.txt则会询问是否覆盖)mv dir1 dir2 (如果目录dir2不存在则将dir1改名为dir2否则将dir1移动到dir2中)mv * ../ (将当前目录下所有内容移到用户当前所在目录的上一级目录中(pwd + ../))mv test1/* test2 (将当前目录一个子目录里的所有文件移动到另一个子目录中)
linux命令之 cp
-r --recursively copy directories recursively 复制目录-p --preserve preserve the specified attributes (default:mode,ownership,timestamps), if possible additional attributes: context, links, xattr, all 同时复制文件属性-d --dereference 当复制符号连接时,把目标文件或目录也建立为符号连接, 并指向与源文件或目录连接的原始文件或目录。 -a --archive 包含以上所有选项,相当于-rpd
eg:
cp log.log test 复制单个文件到目标目录,如果目标目录中存在同名文件会询问是否覆盖(带-a参数两个文件时间戳一致,不带参数则不一样)cp -a test1 test2复制或者重命名整个目录目标目录test1存在则放到目标目录下目标目录test1不存在则修改目录名test1为test2cp -s log.log log_link.log为log.txt建立一个链接、快捷方式(不懂-l的应用)
linux命令之输出
标准输出 > / >> 标准错误输出 2> / 2>>将内容覆盖或者追加到指定文件中
linux命令之 mkdir(创建目录,结合-p可以一次性创建父子多目录)
-m --mode set permission mode (as in chmod), not rwxrwxrwx umask 设定文件读写权限-p --parents no error if existing, make parent directories as needed 一个路径串,系统将自动创建那些尚不存在的路径。-v, --verbose print a message for each created directory 每次创建目录都显示信息
eg:
mkdir -m 777 test1创建目录test1,同时指定目录具有读写执行权限mkdir -p test1/test2创建父子目录mkdir -v test3创建test3目录,创建完成后会提示创建信息
linux命令之 rmdir (只能删除空目录)
-p, --parents Remove DIRECTORY and its ancestors. 当子目录删除后其父目录为空时也一并删除(递归删除空目录)-v, --verbose output a diagnostic for every directory processed
linux命令之 rm (删除命令,预设只能删除文件,删除目录需要加上参数 -r)
-f, --force ignore nonexistent files, never prompt 忽略不存在的文件,从不提示(强制删除,不需要询问,非交互式删除)-i, --interactive(交互式) prompt before any removal 每次删除都询问是否删除-r, -R, --recursive remove directories and their contents recursively 递归删除参数中列出的所有目录以及子目录
eg:
rm log.log 交互式删除rm -i *.log 交互式删除所有.log文件rm -f log.log 不询问直接删除rm -r test1递归删除test1目录下的文件(交互式)rm -rf test1递归删除test1目录下的文件(非交互式)"-"是一个特殊标识,如果要创建或者删除以"-"开头的文件需要使用"--"或者"./"转义创建-f文件touch -- -ftouch ./-f删除-f文件rm -- -frm ./ -f
linux命令之 touch (建立空文件)
linux命令之 cat (一次性显示文件全部内容,连接显示多个文件内容)
-n, --number number all output lines 从1开始对输出的所有行编号-b, --number-nonblank number nonblank output lines 从1开始对非空输出行编号-E, --show-ends display $ at end of each line 每行结尾处显示$ -s, --squeeze-blank never more than one single blank line 将连续两行以上的空白行代换为一行的空白行-T, --show-tabs display TAB characters as ^I 将跳格字符显示为^I主要用途:1、一次性显示整个文件: cat filename2、创建一个文件: cat > filename3、合并几个文件: cat file1 file2 > file
eg:
cat -n file1 > file2 把file1文档的内容加上行号后输入到file2文档中cat -b file1 file2 >> file3 把file1和file2的内容加上行号(空白行不加)之后将内容附加到file3中
linux命令之 nl(将输出的文件内容加上行号)
-b, --body-numbering=STYLE use STYLE for numbering body lines 指定行号的指定方式,主要有两种 -b a 不论是否空行,都列出行号(和cat -n相同) -b t 若有空行,空行不列出行号(默认)-n, --number-format=FORMAT insert line numbers according to FORMAT 行号的表示格式,主要有三种 -n ln 行号在栏位的最左方显示 -n rn 行号在栏位最右方显示,不加0 -n rz 行号在栏位最右方显示,加0-w, --number-width=NUMBER use NUMBER columns for line numbers 行号栏位的占用位数与cat -n相比,nl有更多的显示格式,位数与自动补齐0等
eg:
nl a.txt 标准输出,空白行不加行号nl -ba a.txt 空白行也加行号输出nl -ba -nrz a.txt 行号前面自动补零输出(只有rz才可以补零,lz不仅无意义还会出错)nl -ba -nrz -w3 a.txt 行号前面自动补零,行号占用位数为3位
linux命令之 more(分页显示文件,但预加载整个文件)
+n, -- +num Start at line number num. 从第n行开始显示-n, -- -num This option specifies an integer which is the screen size (in lines). 定义屏幕大小为n行+/, -- +/pattern The +/ option specifies a string that will be searched for before each file is displayed. 在显示文档内容前搜索指定字符串, 并从该字符串前两行的位置开始显示文本内容-c, -- clear 显示内容前先清屏-p -- Do not scroll. Instead, clear the whole screen and then display the text. 空格下一页的时候不滚屏,直接清屏显示下一个内容-s, -- Squeeze (挤,压榨) Squeeze multiple blank lines into one. 将连续多个空行显示为一行-u -- Suppress underlining. (抵制,镇压,废止) 去除内容中的下划线相比cat,more具有搜索、下一页等功能**常用命令:**Enter 向下n行,需要定义,默认为1行空格键 向下滚动一屏Ctrl+F 向下滚动一屏Ctrl+B 返回上一屏= 输出当前行号:f 输出文件名和当前行号V 调用vi编辑器! 调用Shell,并执行命令q 退出more
eg:
more +3 a.txt 从第3行开始显示内容more +/xxx a.txt 从文件中查找第一次出现"xxx"字符串的行,并从该处前两行开始显示输出more -5 每屏/每页显示的5行内容ls -l | more -5 和管道结合使用more命令,并且每页显示5行ls -l结果
linux命令之 less
linux命令之 head/tail
tail: 查看文件后n行 -f 刷新文件,实时监控
linux命令之 which/whereis/locate/find
find命令详解
-name ~ 代表了家目录 . 代表了当前目录 / 代表了系统根目录-perm 按照文件权限模式查找文件-prune 忽略某个目录
linux命令之上传下载
rz: 上传文件至linux当前目录sz: [filename]:从linux下载该文件 -a, --ascii -b, --binary 用binary的方式上传下载,不解释字符为ascii -e, --escape 强制escape所有控制字符,比如Ctrl+x,DEL等 rar,gif等文件采用-b用binary的方式上传 文件比较大而上传出错的话,采用参数-e
Linux命令之 ln(为文件在另一个位置创建一个同步链接)
-b 删除,覆盖以前建立的链接-d 允许超级用户制作目录的硬链接-f 强制执行-i 交互模式,文件存在则提示用户是否覆盖-n 把符号链接视为一般目录-s 软链接(符号链接:Symbolic Link)-v 显示详细的处理过程一: 软链接(ln -s) 以路径的形式存在 可以跨文件系统(硬链接不可以) 可以对一个不存在的文件名进行链接 可以对目录进行链接(硬链接不可以)二:硬链接(默认) 以文件副本的形式存在,但不占用实际空间 只有在同一个文件系统中才可以创建 不能建立指向目录的硬链接
eg:
ln 源文件 目标文件 ln -s 源文件/目录 目标文件/目录
Linux命令之 tar(-将多个文件打包,便于压缩)
-c 打包-x 解包-t 显示包中内容-v 显示操作过程-p 保留原本文件的属性(读写权限等)-f 指定文件-z 支持gzip压缩、解压-j 支持bzip2压缩、解压
eg:
打包、解包tar cvf log.tar 2017.logtar xvf log.tar打包后以gzip格式压缩、解压tar zcvf log.tar.gz 2017.logtar zxvf log.tar.gz打包后以bzip2格式压缩、解压tar jcvf log.tar.bz2 2017.logtar jxvf log.tar.bz2备份还原文件并且保存其权限tar -zcvpf log.tar.gz 2014.log 2015.log 2016.logtar -zxvpg log.tar.gz在文件夹中比某个日期新的文件才备份tar -N "2017/02/08" -zcvf log.tar.gz 2017.log排除部分文件后备份文件夹内容tar --exclude scf/service -zcvf scf.tar.gz scf/*
Linux命令之压缩、解压
1、 gzip: -d 解压文件 -v 显示执行过程 -l 列出压缩文件详细信息2、 zip:压缩文件为zip后缀3、 unzip:解压zip后缀文件
Linux命令之 df (检查linux服务器的文件系统的磁盘占用情况)
-h 以易读的方式显示
Linux命令之 du(检查linux服务器的文件和目录的磁盘占用情况)
-h 以易读的方式显示 du :显示目录或者文件所占空间du 2017.log :显示指定文件或者目录所占空间du 2014.log 2015.log :显示多个文件所占空间
Linux命令之 diff ——比较两个文件的差异
Linux命令之 date(显示或设定系统的日期与时间)
Linux命令之 cal (查看日历等时间信息)
-1 显示一个月的日历(默认)-3 显示3个月的日历(上个月/当前月/下个月)-s 显示星期天为一周的第一天(默认)-m 显示星期一为一周的第一天-j 显示在当年中的第几天(从1月1号算起)-y 显示当前年份的日历
Linux命令之cut (取出我们需要的数据)
-d, -- 后面跟分割字符,与-f一起使用-f, -- 依据-d的分隔字符将一段信息切割成数段,用-f表示取出第几段的意思-c, -- 以字符的单位取出固定字符区间
eg:
echo $PATH | cut -d ':' -f 3,5 取出以‘:’分割后的第3和第5段内容 export | cut -c 12- 取出第12个之后的所有字符 export | cut -c 12-20 取出第12-20的字符
Linux命令之 grep(取出需要数据所在的行)
-c:计算出找到关键字的次数-i:忽略大小写-n:输出行号-v:反向选择,查找没有关键字的行-f:参数是文件,取出文件中的关键字备用grep可以用作文本搜索工具,使用正则表达式搜索
eg:
grep -f test1 test2查找test2中包含test1关键字的行grep -v -f test1 test2查找test2中不包含test1关键字的行cat test2 | grep -nf test1 查找test2中含有从test1中读取出的关键词并且显示内容行号grep 'linux' test1 从test1中查找'linux'关键词grep 'linux' test1 test2 -n 从多个文件test1 test2中查找关键词'linux'且显示内容行cat test1 |grep ^u 找出test1中以u开头的行cat test1 |grep ^[^u] 找出test1中非u开头的行cat test1 |grep hat$ 找出test1中以hat结尾的行cat test1 |grep -E 'linux|Red' 找出test1中包含linux或者Red的行grep '[a-z]\{7\}' *.txt 找出当前目录下所有txt文件中字符串大于7的行
Linux命令之 wc (统计指定文件中的字节数、字数、行数,并将统计结果显示输出)
-c 统计字节数-l 统计行数-m 统计字符数-w 统计字数-L 打印最长行的长度
Linux命令之 ps(-列出系统中当前运行的进程)
ps命令列出的是执行命令那个时刻的进程快照,如果想要动态的显示进程信息,使用top命令
Linux命令之 top
类似于Windows下的任务管理器,实时显示系统中各个进程的资源占用情况
一些实用的命令
last:查询这个月份哪些用户登录了主机man命令查看命令的解释apropos<description> 命令查找需要的命令history 列出所有运行过的命令,使用!+编号调用该命令su:切换登录用户,sudo:允许普通用户执行一些或者全部的root命令
- 简单的linux命令学习
- linux的简单命令学习
- linux 简单命令学习
- Linux学习(1)----一些简单的命令
- Linux--awk命令的简单学习
- Linux的简单命令
- Linux的简单命令
- 简单的linux命令
- linux的简单命令
- 简单的linux命令
- 简单的linux命令
- 简单的linux命令
- 简单的Linux 命令
- 简单的linux命令
- Linux 简单的命令
- Linux简单的命令
- 学习Linux系统中命令的简单方法
- 学习Linux系统中命令的简单方法
- js实现禁止浏览器后退
- FFMPEG学习【libavutil】:Crypto and Hashing(四)
- 基于Qt的时钟跟抽奖界面 图片不停转换的哪种
- 服务认证暴力破解工具Crowbar
- 倾斜摄影数据转cesium 3D tiles工具介绍
- linux的简单命令学习
- ajaxSubmit的使用
- .h头文件、 .lib库文件、 .dll动态链接库文件之间的关系
- java中的BigDecimal和String的相互转换
- Kotlin学习之-5.9 内部类
- 八方向迷宫寻路的全部路径
- Java通用的Excel文件生成工具类,支持生成文件和浏览器直接下载
- 内核知识
- js异步加载调试