Linux 命令个人总结====== 未完待续 个人认为比较重要

Linux 命令个人总结====== 未完待续

man

【功能说明】:

查看帮助

【语法格式】:

man [123456789] 命令、文件、

【选项参数】:

数字"1"表示用户命令,比如“ls”

数字"2"表示系统调用

数字"3"表示C语言库函数

数字"4"表示设备或特殊文件

数字"5"表示文件格式和规则

数字"6"表示游戏及其他

数字"7"表示宏、包及其他杂项

数字"8"表示系统管理员相关的命令,比如“groupadd、route”

 

【实践操作】:

man passwd

man 5 passwd

【技巧拓展】:

如果有不会的命令多用man查看帮助

ls

【功能说明】:

查看文件和目录

【语法格式】:

ls [-aAdfFhil] 目录名

【选项参数】:

-a :全部文件,与隐藏文件(开头为.的文件)一起列出来。

-A :全部文件,与隐藏文件但不包括.和..这两个目录,一起列出来。

-d :仅列出目录本身。

-f :直接列出结果,而不进行排序(ls默认会以文件名排序)

-F :根据文件、目录等信息,附加数据结构,例如:

*:表示可执行文件,/:表示目录,=:表示套接字文件,|:表示管道文件

-h :列出文件大小

-i :列出inode位置,而非  列出文件的属性。

-l :列出长数据串,详细信息和属性。

-n :列出UID和GID而非用户与用户组的名称。

-r :将结果反向输出,例如,原文件名由小到大,反向则由大到小

-t :按时间排序

【实践操作】:

ls -ld /data

ls -a /root

ls -A /root

ls -lh /data

ls -lrt   按时间倒序排列

【技巧拓展】:

 

touch

【功能说明】:

修改文件时间与创建新文件

【语法格式】:

touch [-acdmt] 文件

【选项参数】:

-a : 修改访问时间改为当前时间

-c : 仅修改时间,不建立文件,如果后面文件名不存在则不创建文件

-d : 后面可接日期,也可以使用--date=日期或时间 默认到天

-m : 仅修改mtime

-t : 后面可接时间,格式为[YYMMDDhhmm]

【实践操作】:

touch /data/oldboy.txt

tar zxf mysql-5.5.3-m3.tar.gz

【技巧拓展】:

mkdir

【功能说明】:

建立文件夹

【语法格式】:

mkdir [-p] 文件夹

【选项参数】:

-p:递归建立文件夹

【实践操作】:

mkdir -p /data/a/b/c

【技巧拓展】:

cd

【功能说明】:

切换目录(change direcotory)

【语法格式】:

cd 目录名(可使用相对路径或绝对路径)

【选项参数】:

【实践操作】:

cd /data/a/b/c

cd ../

【技巧拓展】:

cd ~ 回到当前用户的家目录

cd ~oldboy 回到oldboy用户的家目录

cd -  回到上一次工作目录

cp

【功能说明】:

拷贝文件或目录

【语法格式】:

cp [-adilprsu] 源文件 目标文件

【选项参数】:

-a :相当于 –pdr的意思

-d :若文件为连接文件,则复制连接文件属性而非文件本身

-i :若目标文件已存在,在覆盖时会先询问是否真的操作,linux默认是alias cp=“cp -i”

-l :建立硬链接的链接文件,而非复制其本身

-r :递归复制,用于复制目录的 操作

-s :复制成符号链接形式,软连接等同于ln –s

-u :若目标文件比原文件旧,则更新目标文件

最后,需要注意,源文件有两个以上,则最后一个目的文件一定是“目录”

【实践操作】:

\cp /data/test.txt /tmp/test.txt 强制覆盖目标文件 或使用/bin/cp,

cp -r /data /tmp 将data 目录及目录下内容拷贝到tmp下

【技巧拓展】:

rm

【功能说明】:

删除文件或目录

【语法格式】:

rm [-fir] 文件或目录

【选项参数】:

-i :交互模式,删除前询问

-f :强制删除不询问

-r :递归删除

【实践操作】:

rm -f /data/oldboy.txt

rm -rf /data 权限太大,生产环境中少用,find查找,删除查找的结果

【技巧拓展】:

mv

【功能说明】:

移动文件或目录,或者是重命名

【语法格式】:

mv [-fiu] 源文件,目标文件

【选项参数】:

-f :强制移动,不询问

-i :若目标文件名存在则询问

-u

最后,需要注意,源文件有两个以上,则最后一个目的文件一定是“目录”

【实践操作】:

mv /data/oldboy.txt /data/test.txt /tmp

mv -f /data/oldboy.txt /tmp

mv /data/oldboy.txt /data/12345.txt

【技巧拓展】:

echo

【功能说明】:

在显示器上显示一段文字

【语法格式】:

echo [-n] 字符串

【选项参数】:

-n :不在最后自动换行

【实践操作】:

echo “I am studying linux”

echo -n “I am studying linux”

【技巧拓展】:

echo “I am studying linux” > /data/oldboy.txt 将字符串覆盖这个文件

echo “I am studying linux” >> /data/oldboy.txt  两个大于号是追加的意思

seq

【功能说明】:

打印一个数字队列

【语法格式】:

seq [-fsw]

【选项参数】:

-f :用格式化来输出

-s :用来指定分隔号,默认是回车

-w :输出同列宽数列,不足的位数用0补齐

【实践操作】:

seq -f 100%g 10

seq -s ”,” 1 100

seq -w 1 100

【技巧拓展】:

 

pwd

【功能说明】:

打印当前工作的路径

【语法格式】:

pwd [-P]

【选项参数】:

-P :显示真实的工作路径而不是软链接路径

【实践操作】:

ln -s /data /root/data&&cd /root/data&&pwd&&pwd -P

【技巧拓展】:

 

cat

【功能说明】:

显示文件内容

【语法格式】:

cat [-AEnT] 文件

【选项参数】:

-A :相当于-vET的整合参数,可列出一些特殊字符,tab,换行符

-E :将结尾的换行符$显示出来

-n :显示行号

-T :将tab以^I符号显示出来

【实践操作】:

cat -n /etc/passwd

cat -A /etc/passwd

【技巧拓展】:

 

alias

【功能说明】:

命令别名

【语法格式】:

alias [别名]=[指令名称]

【选项参数】:

若不加任何参数则列出目前所有设置的别名

【实践操作】:

alias dir=”ls ”

【技巧拓展】:

如果想要所有用户永久生效则将 alias dir=“ls -l“ 写入到/etc/bashrc 如果想要单个用户生效则写入到该用户的家目录的.bashrc文件中

unalias

【功能说明】:

取消别名

【语法格式】:

unalias 别名

【选项参数】:

unalias +别名 取消该别名

【实践操作】:

unalias dir

【技巧拓展】:

 

head

【功能说明】:

查看文件的前几行

【语法格式】:

head -n 文件

【选项参数】:

-n :n为数字 为查看文件的前n行

不加参数为默认文件的前10行

【实践操作】:

head -10 /etc/passwd

【技巧拓展】:

 

tail

【功能说明】:

查看文件的末尾几行

【语法格式】:

tail [-fn] 文件

【选项参数】:

-f :动态显示文件的后几行

-n :n为数字 为查看文件的后n行

不加参数为默认文件的后10行

【实践操作】:

tail -10 /etc/passwd

tail -f /var/logs/messages.log

【技巧拓展】:

head -30 /data/oldboy.txt |tail -11  显示文件的第20-30行内容

 

tree

【功能说明】:

打印目录结构

【语法格式】:

tail [-ldf] 文件

【选项参数】:

-f :显示完整路径

-L level :显示的深度  find 的-maxdepth

-d :只显示目录

【实践操作】:

tree /data

tree -f /root

tree -d /root

tree -Ld 1 /etc

【技巧拓展】:

 

rmdir

【功能说明】:

删除空目录

【语法格式】:

rmdir 目录名

【选项参数】:

【实践操作】:

rmdir /data

【技巧拓展】:

 

find

【功能说明】:

查找文件

【语法格式】:

find [path] [option] [action]

【选项参数】:

-type TYPE :搜索的类型为TYPE,主要有 文件f,设备文件b、c,目录d,链接文件l

套接字s,以及pipo(p)等

-name filename :搜索文件名

-perm mode :搜索文件权限刚好等于mode的文件

-maxdepth :搜索的目录的深度

-uid n :查找uid为n的文件

-gid n :查找gid为n的文件

-user name :查找用户为name的文件

-group name :查找用户组为name的文件

-nouser :查找文件的拥有者不在/etc/passwd的文件

-nogroup :查找文件的所属组不在/etc/group中的文件

-atime n :n为数字,含义为在n天之前的“一天之内”访问access过的文件

-ctime n :n为数字,含义为在n天之前的“一天之内”修改change过状态的文件

-mtine n :n为数字,含义为在n天之前的“一天之内”修改modification过的文件

-newer file :file为一个文件,意思是只要文件比file文件新就会被列出来

【实践操作】:

find /data -type f -name “*.sh” -exec sed -i ‘s#./hostlists.txt#../jijogi#g’ {} \;

①和xargs搭配用法
find . -type f -mtime +15 |xargs rm -f       #删文件 15天以前 #删目录下文件用这个好 不包括当天
find . -type d -mtime +30 |xargs rm -rf      #删目录 30天以前 慎用。
提示:xargs是一个不错的命令,有机会同学们要总结的。
②使用find的-exec
find /logs -type f -mtime +5 -exec rm { } \;  #在/logs目录中查找更改时间在5日以前的文件并删除它们:

【技巧拓展】:

sed

【功能说明】:

获取各种内容(三剑客的老二)

【语法格式】:

sed [-nefri] ‘command’ 输入文本

【选项参数】:

-n :取消默认输出,只有经过sed处理过的才输出

-e :直接在命令行上进行操作

-f :将sed的命令写到一个文件内,-f filename 则可以执行filename内的  sed操作

-r :sed的操作支持扩展的正则表达式

-i :直接修改读取的档案内容,而不是由屏幕输出

操作选项

a :新增一行,a后面接字符串,这些字符串会出现在新的一行,当前行的下一行

c :取代,c后面接字符串,取代n1,n2之间的行

d :删除,删除行,d后面不接任何东西

i :插入,i后面街字符串,这些字符串会出现在当前行的上一行

p :打印,通常和 -n 参数一起出现

s :搜索

【实践操作】:

sed -n ‘1,2p’ oldboy.txt

sed ‘/oldboy/d’oldboy.txt   将包含oldboy的行删除

seq -i ‘s#./hostlists.txt#../idctest_iplist#g’ oldboy.txt

【技巧拓展】:

grep

【功能说明】:

过滤,核心命令之一(三剑客的老三)

【语法格式】:

grep

【选项参数】:

-c :只输出匹配行的总数

-i :不区分大小写

-v :反向过滤,不包含

【实践操作】:

grep -v oldboy /data/oldboy.txt

ls -l |grep ^d

【技巧拓展】:

ln

【功能说明】:

建立链接文件

【语法格式】:

ln -[s] 源文件 链接文件

【选项参数】:

不加参数表示,链接类型为硬链接

【实践操作】:

ln -s /bin/ls /root/ls

【技巧拓展】:

chkconfig

【功能说明】:

查看或更改脚本的开机启动状态

【语法格式】:

chkconfig [--add][--del][--list][系统服务]

chkconfig [--level <等级代号>][系统服务][on/off/reset]

【选项参数】:

【实践操作】:

chkconfig --add mysqld

chkcnfig --level 3 mysqld on

【技巧拓展】:

wc

【功能说明】:

统计,文件的字节数、字数、行数,并将统计结果输出

【语法格式】:

wc [-clmwL]

【选项参数】:

-c 统计字节数。

-l 统计行数。

-m 统计字符数。这个标志不能与 -c 标志一起使用。

-w 统计字数。一个字被定义为由空白、跳格或换行字符分隔的字符串。

-L 打印最长行的长度。

-help 显示帮助信息

--version 显示版本信息

【实践操作】:

wc -l /etc/passwd

wc -c /etc/passwd

【技巧拓展】:

查看nginx进程的个数

ps aux |grep nginx |grep -v grep |wc -l

tar

【功能说明】:

打包压缩,解包、解压

【语法格式】:

tar [主选项+辅助选项] 文件或目录

【选项参数】:

c 创建新的文件。

x 拆包

t 列出档案的内容,不拆包

辅助选项:

-z :使用gzip 进行压缩,解压

-j :使用bzip2进行压缩解压

-v :压缩或解压过程中显示文件

-f :使用文档名,-f之后接文件名

-p :保留文件原有的属性

--exclude FILE/directory :在压缩过程中不要把FILE/directory打包

【实践操作】:

tar -cvf /tmp/etc.tar /etc

tar -zcvf /tmp/etc.tar.gz /etc

tar -jcvf /tmp/etc.tar.bz2 /etc

tar -ztvf /tmp/etc.tar.gz 查看这个包内的内容

cd /usr && tar -xzvf /tmp/etc.tar.gz 将这个包解压到/usr

tar -zxvf /tmp/etc.tar.gz etc/passwd 只将passwd文件解压出来

【技巧拓展】:

cut

【功能说明】:

正如其名,cut的工作就是“剪”,具体的说就是在文件中负责剪切数据用的。cut是以每一行为一个处理对象的,这种机制和sed是一样的。

【语法格式】:

cut [-bn] [file] 或 cut [-c] [file] 或者 cut [-df] file

【选项参数】:

-b :以字节为单位进行分割

-c :以字符为单位进行分割

-d :自定义分隔符,默认为制表符

-f :与-d一起使用,显示哪个区域,cut -df 类似awk的功能,

-n :取消分割多字节字符。仅与-b一起使用

【实践操作】:

cat /etc/passwd |cut -d : -f 1,2-4

[[email protected] ~]# who |cut -b 1-3 取1-3个字节,汉字是

roo

roo

【技巧拓展】:

egrep

【功能说明】:

等同于 grep -E 扩展的正则表达式

【语法格式】:

 

【选项参数】:

-v :不包含的行

-n :显示行号

【实践操作】:

egrep ‘[a-z]+bale’ 匹配一个或多个小写字母后跟able的串,如loveable,enable等

【技巧拓展】:

xargs

【功能说明】:

ls或者find之后的结果可以接xargs执行其他命令

【语法格式】:

ls |xargs

【选项参数】:

【实践操作】:

find /etc/ -name ‘*.conf’ -maxdepth 1 |xargs tar -czvf etc.tar.gz

find /oldboy -name ‘*.sh’ |xargs sed -i ‘s#./hostlist.txt#../idctest_iplist#g’

【技巧拓展】:

xargs

【功能说明】:

ls或者find之后的结果可以接xargs执行其他命令

【语法格式】:

ls |xargs

【选项参数】:

【实践操作】:

find /etc/ -name ‘*.conf’ -maxdepth 1 |xargs tar -czvf etc.tar.gz

find /oldboy -name ‘*.sh’ |xargs sed -i ‘s#./hostlist.txt#../idctest_iplist#g’

cat url-list.txt | xargs wget –c

【技巧拓展】:

seq

【功能说明】:

打印一个数字序列 echo {1..5}

【语法格式】:

seq [-fsw]

【选项参数】:

-f :用格式化来输出

-s :用来指定分隔号,默认是回车

-w :输出同列宽数列,不足的位数用0补齐

【实践操作】:

seq -f 100%g 10

seq -s ”,” 1 100

seq -w 1 100

【技巧拓展】:

时间: 2024-10-20 02:08:57

Linux 命令个人总结====== 未完待续 个人认为比较重要的相关文章

Linux权限总结(未完待续)

Linux中,权限是十分重要的,可是我比较容易混,今天就来练习和总结一下吧 基本命令及说明 1.更改用户属组:usermod -g NEW_GROUP -G SUPPORT_GROUP USER 2.更改文件属性:chown USER:GROUP text-->冒号可以改为".",只改组时符号需在.管理员使用 chgrp GROUP text      -->可加参数-R把目录下面的文件都改属组 3.更改文件权限:chmod ### text 模拟用户举例:相对于leaf来

把握linux内核设计思想系列(未完待续......)

[版权声明:尊重原创,转载请保留出处:blog.csdn.net/shallnet,文章仅供学习交流,请勿用于商业用途] 把握linux内核设计思想(一):系统调用 把握linux内核设计思想(二):硬中断及中断处理 把握linux内核设计思想(三):下半部机制之软中断 把握linux内核设计思想(四):下半部机制之tasklet 把握linux内核设计思想(五):下半部机制之工作队列及几种机制的选择 把握linux内核设计思想(六):内核时钟中断 把握linux内核设计思想(七):内核定时器和

git个人使用总结 —— idea命令行、撤销commit (未完待续)

近期在使用git,最开始在idea界面操作,后来要求用命令行.刚开始还不是很习惯,感觉很麻烦,用了几天后感觉爽极了! 其实git的命令也不是很多,熟悉一段时间就差不多能顺利使用了.使用过程中遇到了各种各样的问题,有些小问题就在这里集中总结一下. 1.idea命令行.git安装后就自带终端git bash,使用起来很方便.但是用idea开发,开发后还要在相应文件夹下打开git bash很麻烦.其实idea也带有终端terminal,在最下方可以找到,在这里就可以执行命令.但是如果是默认方式安装的g

文件查找命令find (笔记)未完待续

之前所学的grep egrep fgrep 都是用来查找文本中的某个字符匹配的 现在来学一下查找文件命令 locate find locate 此命令是非实时查找文件,它是根据全系统文件数据库进行查找的, 仅用模糊匹配,非精确查找 locate filename 即可实现查找其它相关文件 但是注意有时候如果系统是刚安装的有可能还没建立此数据库,使用该命令会提示查找不到数据库 不过不用担心使用updatedb即可自动生成数据库,生成数据库的时候有时候会很慢,这个根据用户的 磁盘上所放的东西多少决定

Exp2 后门原理与实践(未完待续)

Exp2 后门原理与实践 实验环境 攻击机 kali 4.14(64位) (IP: 10.0.2.6/24) 靶机 ubuntu 16.04(32位) (IP: 10.0.2.4/24) windows 7 sp1(64位) (IP: 10.0.2.7/24) nc/ncat的使用 nc(全称是netcat)是一个用于TCP/UDP连接和监听的linux工具,有着网络工具中的"瑞士军刀"的美誉.nc的实现版本大致有两种,一种是带有-e或-c 选项可以直接给出执行命令,另一种不支持-e选

whatweb.rb 未完待续

#!/usr/bin/env ruby #表示ruby的执行环境 =begin # ruby中用=begin来表示注释的开始 .$$$ $. .$$$ $. $$$$ $$. .$$$ $$$ .$$$$$$. .$$$$$$$$$$. $$$$ $$. .$$$$$$$. .$$$$$$. $ $$ $$$ $ $$ $$$ $ $$$$$$. $$$$$ $$$$$$ $ $$ $$$ $ $$ $$ $ $$$$$$. $ `$ $$$ $ `$ $$$ $ `$ $$$ $$' $ `$

[daily][optimize] 去吃面 (python类型转换函数引申的性能优化)(未完待续)

前天,20161012,到望京面试.第四个职位,终于进了二面.好么,结果人力安排完了面试时间竟然没有通知我,也没有收到短信邀请.如果没有短信邀请门口的保安大哥是不让我进去大厦的.然后,我在11号接到了面试官直接打来的电话,问我为啥还没到,我说没人通知我我不知道呀.结果我就直接被他邀请去以访客的身份参加面试了.不知道人力的姑娘是不是认识我,且和我有仇,终于可以报复了... 然后,我终于如约到了,面试官带着我去前台登记.前台的妹子更萌...认为我是面试官,面试官是才是来面试的.我气质真的那么合吗?

jdbc14 及 jdbc16 共存所带来的问题【未完待续】

在JAVA中JDK版本与JDBC版本的一致性十分重要,开发都们常常会忽略了这一点导致很多不必要的错误.昨天给客户排查了一个关于EDB在JBoss中使用时关于这方面的问题,希望给大家一点启发. 系统环境: Red Hat Enterpirse Linux 6 JBoss Enterprise Application Server 6 EnterpriseDB Postgres Plus Advanced Server 9 Oracle JDK 1.6 问题症状: 在JBoss日志中间歇性地出现以下

scanf ---------未完待续

1.不可读入空格 #include<iostream> #include<stdio.h> using namespace std; int main() { char c[50]; scanf("%s",c); printf("%s",c); return 0; } 2.可以读入空格 用字符 ^ 可以说明补集.把 ^ 字符放为扫描集的第一字符时,构成其它字符组成的命令的补集合,指示 scanf() 只接受未说明的其它字符. #include