linux命令的理解

.  表示当前目录;

.. 表示上层目录;

~表示用户主目录;


rm , 是remove的缩写 ,删除文件,不能删除目录。

rm  -r 可以删除一个目录及其下面的内容,有提示信息。

rm  -rf 强力删除一个目录及其下面的内容,没有提示。

mv, 是move的缩写,移动文件到另一个地方,mv  [OPTION]... [-T]     SOURCE DEST

将目录A重命名为B

mv A B

mv   -i  a.txt   B/

如果目录B下有与a.txt同名的文件,则提示是否override.

mv -f a.txt    B/

如果目录B下有与a.txt同名的文件,不会提示,直接override.


当要大量复制(或移动)文件时,会提示如下错误

$ cp sslib1/*.xml sslib/

-bash: /bin/cp: 参数列表过长
解决办法:

find upload/ -name "*.jpg" -exec mv {} /home/posadm/apache-tomcat-6.0.37/webapps/posm/upload/  \;

提示:在使用-exec参数时,必须以“\;”结尾,而且之前要有一个空格,否则,系统会提示“find遗漏-exec参数”,命令将无法执行


chmod u+x  hello.txt  ,增加文件的权限,

r ,w,x ,

u-->user;g-->group;o-->others;


mkdir  ,新建一个目录。

mkdir -p about/abc/def 可以递级创建新的三个目录

如果想看看mkdir到底做了什么,可以添加选项“-v”,继续上面举例:

mkdir -pv about/abc/def


cp ,是copy paste的缩写,

cp [OPTION]... [-T] SOURCE DEST


cp  file1 file2

可以在同一个目录中备份文件,意思是将file1拷备一份同时命名为file2


grep -lr  13714001947  *199002.trc

表示在当前目录中,在文件名为*199002.trc的文件中查找字符串13714001947,以文件名显示查找结果。


Linux命令敲错了,可以按ctrl +c 退出。


tar -cf all.tar *.jpg 

这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包 
,-f指定包的文件名。

tar -rf all.tar *.gif

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的


tar -tf all.tar

这条命令是列出all.tar包中所有文件,-t是列出文件的意思


tar -xf all.tar 

这条命令是解出all.tar包中所有文件,-x是解开的意思


tar -czf all.tar.gz *.jpg

这条命令是将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个 
gzip压缩过的包,包名为all.tar.gz


tar -xzf all.tar.gz

这条命令是将上面产生的包解开

tar -cjf all.tar.bz2 *.jpg

这条命令是将所有.jpg的文件打成一个tar包,并且将其用bzip2压缩,生成一个 
bzip2压缩过的包,包名为all.tar.bz2 


tar -xjf all.tar.bz2

这条命令是将上面产生的包解开



tar -cvzf tdshome.tar.gz  tdshome/  --exclude=tdshome/app/posm/upload/skbPic --exclude=tdshome/log --exclude=tdshome/trc --exclude=tdshome/app/posm/exportexcel


查询当前log目录下最近两天所有的以log结束的文件,并压缩到aaa.tar.gz

find log -name "*.log" -mtime -1|xargs tar -cvzf aaa.tar.gz


 vim hello.c  //如果hello.c文件不存在,将创建,如果存在,将打开


vim 中查找方法: 用vim找开一个文件时,输入 /XXXXX,回车即可查找。


vim 中输入G,可直接定位到文件末尾。


du -h logs/*

--max-depth=1 指定深入目录的层数

指令 du 能以指定的目录下的子目录为单位,显示每个目录内所有档案所占用的磁盘空间大小


true >log.txt  清空文件的内容


ps    -e 显示所有进程  -f 全格式


rpm -ivh 软件包名

安装软件包并显示安装进度。这个是用得最多的了

rpm -qa

查询已经安装哪些软件包。


rpm -q 软件包名

查询指定软件包是否已经安装。


rpm -Uvh  软件包名

升级一个软件包。


rpm -e 软件包名

删除指定软件包。


netstat -ntpl 

用于查看系统启动的服务.


netstat -antp|grep 8013|wc -l

统计开启端口为8013服务的连接数


find -name 文件名;

根据名称查找文件。


find -user 属主名;

根据文件的属主查询文件。


whereis 主要用于查找程序文件


which 也是查找命令文件,比如:which mysqldump


whereis -b find 查找find命令文件的存放位置


sz 文件名;

可以传从linux中传文件到本地电脑。

rz

从本地传文件到linux可直接拖到窗口中.


防火墙的开启/关闭/状态查看

service iptables start/stop/status


MySQL中导入数据

mysql> source   xxx.sql;


mysql中数据库的备份

mysqldump -u 用户名  -p  数据库 >  xxx.sql;

如:mysqldump  -u  root  -p  z_p2p_quartz  >  /home/p2padmin/quartzDump.sql


ping -c 4 www.baidu.com表示发送4次请求。


要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做:

sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl /modules`


2.1 将文件1.txt内的文字“garden”替换成“mirGarden”

sed -i "s/garden/mirGarden/g" 1.txt //sed -i 很简单

2.2 将当前目录下的所有文件内的“garden”替换成“mirGarden” 

sed -i "s/garden/mirGarden/g" `ls` //其实也就是ls出多个文件名而已


服务器之间文件的复制

yum install openssh-clients

scp root@183.63.52.147:/home/posadm/tdshome/trc/201409/30/jdk1.6.0_45.tar.gz  /home/michale


在线安装at

yum install at


在线安装crontab

yum install -y vixie-cron

 
查看状态
service crond status

启动服务
service crond start

crontab -e 进行文件的编辑,里面的语法同vi命令


默认情况下,crontab中执行的日志写在/var/log下


 rpm -Uvh  http://www.elrepo.org/elrepo-release-6-6.el6.elrepo.noarch.rpm

第三方软件源


在线安装sz ,rz命令

yum install-y lrzsz

网络不通要查看路由

vi /etc/sysconfig/network-scripts/route-eth0

172.18.210.0/24 via 172.18.200.2

添加完之后, service network restart


vi /etc/resolv.conf 设置域名解析服务器


重启网络后,是看NetworkManager服务是否也自动开启了,如果开启了就要关闭掉。

局域网中添加网关的方法

route add default gw 192.168.1.1

192.168.1.1是你局域网的网关地址


lsof

它的意思是 List Open Files,很简单你就记住了它是 “ls + of”的组合

lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能


lsof -i //显示所有打开的端口

lsof -i:80 //显示所有打开80端口的进程


在线安装telnet

yum install telent -y

 telnet ip port 的返回值来确定是否开通

https的端口是443


hostname可以查看主机名

vi /etc/sysconfig/network

修改此文件可以修改主机名,修改完成后要重启服务器。


一台服务器能ping通,但用telnet访问一个开启了的端口时不通,可能原因是开启了防火墙,关闭掉就行



s 按时间排序
ls -lt 从新到旧
ls -lrt 从旧到新

Linux下如何查看一个目录下的内容?并按照修改时间升序排序
命令:ls -lrt
详细解释:

-l     use a long listing format  以长列表方式显示(详细信息方式)
-t     sort by modification time 按修改时间排序(最新的在最前面)
-r     reverse order while sorting (反序)
-s sort by file size (按文件大小排序)


ls -lrt `grep -lr 183.63.52.147 *701137.trc`

查找包括指定内容的所有文件,并列出文件的详细情况,并排序。

查看目录的大小

du  -s dir;dir代表要查看的目录, 文件也行

删除文件后,重启系统磁盘空间才会增加

du -sh *

查看当前目录下各文件的大小


linux中查看内存的使用情况

cat /proc/meminfo


mtime查询的是文件last modified时间,其中最让人迷惑的就是参数 +N 、 N 、 -N 三个参数的意义了。

网上有朋友说不同linux版本这3个参数意义不同,我没有考证,下面的说明都是基于centos5.5 64bit final。

 

 

+N

-∞ —— (当前时间-(N+1)*24)

-N

(当前时间-N*24)—— +∞

N

(当前时间-(n+1)*24 —— (当前时间 - n*24)

 

#一些应用

-mtime 0:24小时内

-daystart -mtime 0:今天00:00:00至现在被修改的文件,注意顺序! -mtime 0 -daystart 将得到错误的结果。

-mtime +0: 24小时前 



虚拟机安装了Centos,忘记了root密码,如何处理

(1)重新启动Centos,在启动过程中,长按“ESC”键,进入GNU GRUB界面

  (2)选择要进入的系统,按“E”键(在启动之前编辑命令)。

    (3)选择第二项操作系统的内核“kernel”,按"E"键(在引导顺序编辑选定的命令)

(4)在 “rhgb quiet”后面间隔,输入“1”或者“single”,按Enter键保存。(向内核传递启动参数,进入单用户模式)

此时又回到GRUB界面.

(5)这时,按“B”键启动系统。

(6)输入命令行“passwd root”重新修改root的密码,按“Enter”键

  (7)  reboot重启系统


linux如何查看所有的用户和组信息

1、cat /etc/passwd;
2、cat /etc/group


awk是以文件的一行为处理单位的,awk每接收文件的一行,然后执行相就的命令,来处理文件,

文件的每一行中,由域分隔符分开的每一项称为一个哉。通常,在不指名-F域分隔符的情况下,默认的域分隔符是空格

cat /etc/passwd|awk -F ':' '{print $1","$7}'

打印每一行的第一个域及第7个域,$0表示所有哉



curl ip.cn  查看外网ip


查看CPU的内存使用状态

top


%us:表示用户空间程序的cpu使用率(没有通过nice调度)

%sy:表示系统空间的cpu使用率,主要是内核程序。

%ni:表示用户空间且通过nice调度过的程序的cpu使用率。

%id:空闲cpu

%wa:cpu运行时在等待io的时间

%hi:cpu处理硬中断的数量

%si:cpu处理软中断的数量

%st:被虚拟机偷走的cpu



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值