Linux命令行写出1到100积,linux 常用命令记录

说明:本文是在工作中遇到一些命令的记录,不同命令参考自不同博文

查看linux系统版本信息

lsb_release -a

下载文件

wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.1/gcc-4.8.1.tar.gz

利用secureCRT在windows 和 linux 间互传文件

上传 rz

下载 sz

ldconfig命令

用途主要是在默认搜寻目录/lib和/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表,为了让动态链接库为系统所共享,需运行动态链接库的管理命令ldconfig,此执行程序存放在/sbin目录下。

ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令。

统计当前文件夹下文件的个数

ls -l |grep "^-"|wc -l

统计当前文件夹下目录的个数

ls -l | grep  "^d" | wc -l

统计当前文件夹下文件的个数,包括子文件夹里的

ls -lR|grep "^-"|wc -l

统计文件夹下目录的个数,包括子文件夹里的

ls -lR|grep "^d"|wc -l

文件名按时间排序

ls -lrt

-r 逆序;-t 按修改时间排序(最新的在最前面)

# 总核数 = 物理CPU个数 X 每颗物理CPU的核数

# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数

# 查看物理CPU个数

cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l

# 查看每个物理CPU中core的个数(即核数)

cat /proc/cpuinfo| grep "cpu cores"| uniq

# 查看逻辑CPU的个数

cat /proc/cpuinfo| grep "processor"| wc -l

在linux中运行命令行时,会输出一些日志信息,特别典型的是启用WebLogic命令时,输出一些信息,当启用demon模式运行时,又想收集这些信息咋办?

解决的办法就是使用输出重定向,如下面的命令:

nohup ./startWebLogic.sh  >  app.log    2>&1    &

其中app.log是保存输出的文件名称;

2>&1 表示不仅命令行正常的输出保存到app.log中,产生错误信息的输出也保存到app.log文件中;

& 表示该进程在后台运行;

nohup表示进程在当用户注销(logout)或者网络断开时不会被终止。

注意:这里若不指定输出日志文件,缺省地会输出到nohup.out文件中

*/2 * * * * root cd /opt/xxxx/test_S1/html/xxxx/admin; php index.php task testOne >/dev/null 2>&1

对于& 1 更准确的说应该是文件描述符 1,而1标识标准输出,stdout。

对于2 ,表示标准错误,stderr。

2>&1 的意思就是将标准错误重定向到标准输出。这里标准输出已经重定向到了 /dev/null。那么标准错误也会输出到/dev/null

可以把/dev/null 可以看作"黑洞". 它等价于一个只写文件. 所有写入它的内容都会永远丢失. 而尝试从它那儿读取内容则什么也读不到.

偶尔也可以把 & 在命令的最后加上,表示让程序后台执行。

防火墙

service iptables status

查看端口被哪个进程占用

netstat -tunlp

linux服务器间传送文件

scp [file] root@xx.xx.xx.xx:/lib

>(覆盖)和>>(追加)都是重定向输出

1> 指标准信息输出路径(也就是默认的输出方式)

2> 指错误信息输出路径

2>&1 指将标准信息输出路径指定为错误信息输出路径(也就是都输出在一起)

rar解压

rar x aa.rar

tar -xvf file.tar //解压 tar包

tar -xzvf file.tar.gz //解压tar.gz

tar -xjvf file.tar.bz2   //解压 tar.bz2

tar -xZvf file.tar.Z   //解压tar.Z

unrar e file.rar //解压rar

rar a test.rar *.jpg //将所有.jpg的文件压缩成一个rar包

unzip file.zip //解压zip

fdisk -l

mount /dev/sdb8 /device

df -h

当找不到根目录时(磁盘满了)http://www.desipo.com/linuxxitongdfminglingxianshiyichanggenmulufenqudiushiwentijiejue-a-203.html

grep -v rootfs /proc/mounts > /etc/mtab

grep -v xxx是指不显示包含xxx的行或文件,-v表示取反的意思

NFS

文件所在的服务器:ip1 文件夹为/home/nfs_data (被挂载地址)

应用服务器:ip2 文件夹为/home/nfs_data (挂载到的地方)

安装:CentOS是自带NFS,所以无需安装,要安装的话用yum -y install nfs-utils rpcbind

启动NFS:默认已启动,如果没有启动,输入命令:service rpcbind start、service nfs start

1、在 ip1 设置共享目录,把该目录开放给 ip2,编辑/etc/exports,增加一行

/home/nfs_data/ ip2(rw,no_root_squash,no_all_squash,sync)

2、使配置生效,输入命令:exportfs -r

3、查看已共享的目录,命令:

本机:showmount -e

其他:showmount -e IP

4、在 ip2 挂载共享文件夹,输入命令:

mount -t nfs  -o nfsvers=3 ip1:/home/nfs_data /home/nfs_data 为了都有读写权限,指定使用nfs3版本,而不指定的话,默认的是4

5、完成。ip2 的nfs_data已指向 ip1 的nfs_data

top命令

c: 显示完整的命令

d: 更改刷新频率

f: 增加或减少要显示的列(选中的会变成大写并加*号)

F: 选择排序的列

h: 显示帮助画面

H: 显示线程

i: 忽略闲置和僵死进程

k: 通过给予一个PID和一个signal来终止一个进程。(默认signal为15。在安全模式中此命令被屏蔽)

l:  显示平均负载以及启动时间(即显示影藏第一行)

m: 显示内存信息

M: 根据内存资源使用大小进行排序

N: 按PID由高到低排列

o: 改变列显示的顺序

O: 选择排序的列,与F完全相同

P: 根据CPU资源使用大小进行排序

q: 退出top命令

r: 修改进程的nice值(优先级)。优先级默认为10,正值使优先级降低,反之则提高的优先级

s: 设置刷新频率(默认单位为秒,如有小数则换算成ms)。默认值是5s,输入0值则系统将不断刷新

S: 累计模式(把已完成或退出的子进程占用的CPU时间累计到父进程的MITE+ )

T: 根据进程使用CPU的累积时间排序

t: 显示进程和CPU状态信息(即显示影藏CPU行)

u: 指定用户进程

W: 将当前设置写入~/.toprc文件,下次启动自动调用toprc文件的设置

>: 向后翻页

?: 显示帮助画面

1(数字1): 显示每个CPU的详细情况

移动前 10000 文件到指定目录

mv `ls |sed -n 1,10000p` [目标目录]

vi命令

查找:

/[要查找的内容]

n:向后查找下一个

N:向前查找上一个

向下翻页(下一页):Ctrl + f

向上翻页(上一页):Ctrl + b

跳到文本的第一行:gg

跳到文本的最后一行:G

跳到光标行最前:0

跳到光标行最后:$

编辑:

撤销操作:u

恢复操作:ctrl+r

dd:删除游标所在的一整行(常用)

ndd:n为数字。删除光标所在的向下n行,例如20dd则是删除光标所在的向下20行

d1G:删除光标所在到第一行的所有数据

dG:删除光标所在到最后一行的所有数据

d$:删除光标所在处,到该行的最后一个字符

d0:那个是数字0,删除光标所在到该行的最前面的一个字符

x,X:x向后删除一个字符(相当于[del]按键),X向前删除一个字符(相当于[backspace]即退格键)

nx:n为数字,连续向后删除n个字符

find

1.按照文件名查找

find /etc -name '*srm*' #使用通配符*(0或者任意多个)。表示在/etc目录下查找文件名中含有字符串‘srm’的文件

2.按照文件特征查找

find / -amin -10 # 查找在系统中最后10分钟访问的文件(access time)

find / -mmin -5 # 查找在系统中最后5分钟里修改过的文件(modify time)

find / -mtime -1 #查找在系统中最后24小时里修改过的文件

find / -size -1000k #查找出小于1000KB的文件(c:字节,w:双字,k:KB,M:MB,G:GB)

3.使用混合查找方式查找文件

参数有: !,-and(-a),-or(-o)。

find /tmp -size +10000c -and -mtime +2 #在/tmp目录下查找大于10000字节并在最后2分钟内修改的文件

find / -user fred -or -user george #在/目录下查找用户是fred或者george的文件文件

find /tmp ! -user panda #在/tmp目录中查找所有不属于panda用户的文件

查找包含关键字的文件

find . -type f -name "*" |xargs grep 'abcdeabcde'

grep 'abcdeabcde' *

-exec、xargs 两者都是对符合条件的文件执行所给的Linux 命令

-exec:{}表示命令的参数即为所找到的文件,以;表示comman命令的结束。\是转义符,因为分号在命令中还有它用途,所以就用一个\来限定表示这是一个分号而不是表示其它意思。

xargs:要结合管道来完成。格式:find [option] express |xargs command

$find test/ -type f

test/myfile.name

test/files/role_file

test/files/install_file

$find test/ -type f |xargs echo

test/myfile.name test/files/role_file test/files/install_file

$find test/ -type f -exec echo {} \;

test/myfile.name

test/files/role_file

test/files/install_file

很明显,exec是对每个找到的文件执行一次命令,除非这单个的文件名超过了几k,否则不会出现命令行超长出报错的问题。

而xargs是把所有找到的文件名一股脑的转给命令。当文件很多时,这些文件名组合成的命令行参数很容易超长,导致命令出错。

相比之下,也不难看出各自的缺点

1、exec 每处理一个文件或者目录,它都需要启动一次命令,效率不好;

2、exec 格式麻烦,必须用 {} 做文件的代位符,必须用 \; 作为命令的结束符,书写不便。

3、xargs 不能操作文件名有空格的文件;

综上,如果要使用的命令支持一次处理多个文件,并且也知道这些文件里没有带空格的文件,

那么使用 xargs比较方便; 否则,就要用 exec了。

less:与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件

1.全屏导航

ctrl + F - 向前移动一屏

ctrl + B - 向后移动一屏

ctrl + D - 向前移动半屏

ctrl + U - 向后移动半屏

2.单行导航

j - 向前移动一行

k - 向后移动一行

3.其它导航

G - 移动到最后一行

g - 移动到第一行

q / ZZ - 退出 less 命令

/字符串:向下搜索"字符串"的功能

?字符串:向上搜索"字符串"的功能

n:重复前一个搜索(与 / 或 ? 有关)

N:反向重复前一个搜索(与 / 或 ? 有关)

crontab:定时任务

minute hour day month week command

其中:

minute: 表示分钟,可以是从0到59之间的任何整数。

hour:表示小时,可以是从0到23之间的任何整数。

day:表示日期,可以是从1到31之间的任何整数。

month:表示月份,可以是从1到12之间的任何整数。

week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

-e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。

-l:显示某个用户的crontab文件内容,如果不指定用户,则表示显示当前用户的crontab文件内容。

-r:从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。

-i:在删除用户的crontab文件时给确认提示。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值