- 浏览: 1869806 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
wangyudong:
Wisdom RESTClient工具地址更新了哦https: ...
前端模拟POST发送数据-Chrome下的REST Client(接口测试利器) -
wangyudong:
很多REST Client是不支持自动化测试RESTful A ...
前端模拟POST发送数据-Chrome下的REST Client(接口测试利器) -
higkoo:
一个非常棒的系统,要是能支持LDAP等开源认证就完美了。
Cynthia 是个问题管理/BUG管理/任务管理/项目管理系统。 -
寻光之旅:
标签库使用有啥好处呢?
thinkphp 使用标签库的步骤 -
lgdjy123:
Android:TextView属性大全
搜索文件命令:
find /dir -name httpd.conf 在/dir目录下马查找文件httpd.conf.
find / -user 用户名 可以搜索某用户的文件.
find / -type f -readable 2>/dev/null |xargs fgrep --binary-files=without-match -i -s 10.134.143
/表示在搜索目录是/
-type f 表示搜索的东西是普通文件
2>/dev/null 把find的由于权限或文件类型出错的输出略掉
|xargs 是把前面find得到的文件做为后面命令的输入
fgrep --binary-files=without-mathc -i -s 10.134.143 在不是binary类型的文件搜索10.134.143串,-i表法不区分大小写,-s表示关闭错误输出.
i.e: find ./ -type f -name 'php.ini*' 切记要加上为php.ini*加上'',因为里面有特殊字符,否则shell解析时会报错"find 路径必须在表达式之前".
locate httpd.conf 也可以查找,但不够实时.(先用updatedb命令来更新数据库后就会实时的);
which ls 查找可执行文件的路径.
whereis ls 查找可执行文件或源文件的路径
grep 370 ./*.txt 在当前目录下搜索文本内容包括370的行. grep 370 -r ./* 搜索时包括了所有文件及子目录.
grep abc a.txt 在a.txt中搜索abc.
文件信息
stat /etc/inetd.conf 显示文件的详细信息,包括文件修改时间,大小,权限
file /etc/inetd.conf 显示文件类型.
chattr +i test.txt 设置test.txt文件不允许修改.这时执行echo "1">>test.txt 或 chmod 777 test.txt执行不成功的,会提示权限不够.
chattr -i test.txt 允许test.txt文件修改.
ls -lh h表示human,显示文件大小时可以以k,m,g这样可读的信息显示给用户
tree -l 显示目录结构.没有没有安装,请先安装apt-get install tree.
wc -l / -c 显示文件的行数与字符数.
文件内容
more test.txt 显示文件内容
cat test.txt 显示文件内容
touch test.txt 建立新的空文件
diff -a -b -y default.vcl default-suc0401.vcl 比较两个文件的不同之处.-a就是当text对比,-b忽略空白的不同,-y分屏显示.
显示系统版本
more /etc/issue 可以显示系统发行版本.
cat /proc/version 显示中包括了内核版本.
uname -a 也可显示内核版本.
uname -ar 可以看出是32位系统还是64位系统.
/etc/hostname 可以改计算机名字.
结束程序
killall php-fpm 进程名通过进程名杀进程.
kill 9是强制结束程序
kill 15是正常结束程序
pgrep php 查找进程名中包含php的串,并打出所有符合条件的进程pid. 如: pgrep -u root php 以root用户启动的php进程.
pkill php 结束pgre php查到的所有进程.
ctrl+c = kill 2 中断(可以被进程忽略)
用户相关命令
addgroup hadoop 添加组
adduser --gid 1002 hadoop #1002为组hadoop的group id. 为组添加用户.
chown -hR hadoop /usr/local/hadoop 更改目录所属人 注:h--表不影响符号连接的指向位置.R--表对子目录递归执行.
who,显示登录用户信息。
userdel/useradd 用户 删除用户
groupdel/groupadd 分组 删除分组
id [用户] 可以显示当前用户或别的用户uid,gid的信息.
权限相关
chmod -Real 777 dir 改权限
umask 显示或设置默认的遮挡权限 如显示为022时,使用mkdir建立的文件目录权限为755即drwxr-xr-x
ulimit 可以查看或修改系统对当前用户的各种限制,ulimit -a , ulimit -n 3000,如进程数,内存,最大文件描述符.等信息,它只可在当前环境下生效,如果要永久生效,请修改/etc/security/limits.conf.
系统信息
more /proc/cpuinfo CPU信息
cat /proc/meminfo 内存信息
free -l 显示内存的当前信息,已用的,空闲的,缓存的等.
fdisk -l |grep Disk 硬盘信息
df 分区信息
ps -aux 查看系统进程.ps -afx 显示以进程树的形式显示所有进程.
ps afx | grep php | wc -l 显示所有包含php的进程的数目.
ps -emf 显示线程.
pstree 显示当前的进程数.
系统调试命令
strace -p 5854 追踪进程的系统调用 如: strace -p 5854 -o ./strace.txt 把所有调用写到文件strace.txt里.
strace -p 816 -c 可以统计每进程的系统调用次数与时间.
系统负载相关命令
cat /proc/loadavg 随时可以运行,但尚未分配到cpu而处于等待状态的进程数的平均值.如果cpu足够,此值为接近于0,经验上来说,只要此值小于cpu内核数就行.
0.02(1分钟) 2.09(5分钟) 3.33(15分钟) 1/376(运行中的进程/总进程) 4950(最后创建的进程pid)
w[当前登陆的用户] / uptime[系统已经运行的时间] / tload[系统负载变化图] 显示当前连接的用户及负载.
top 也可以显示负载.
nmon 工具可以更友好在的命令行下显示系统的各种实时性能参数.如cpm,mem,net,nfs,filesystem.内核kernel,等.
vmstat -a 10 4 可以查看mem/cpu/swap等性能指标.
sar -A / sar -u 10 4 查看系统各项性能指标.如没安装,请使用 apt-get install sysstat安装.
nice -10 top 把top命令的执行优先级调低,并同时执行top 系统默认top的PRI=20,nice=0. 这时top的PRI=30,nice=10
系统环境
env 显示系统环境变量 例如:PATH,USER,SHELL
export AAA="hollo francis" 把这个环境变量设入内存.然后用env|grep AAA可以看到.
echo $AAA 可以输出此变量.
export PATH="$PATH:/usr/local/apache/bin"
系统的重要目录
/etc/rc.local(ubuntu) /etc/rc.d/rc.local(redhat) 是linux系统的初始执行脚本文件.
/etc/init.d/是系统的服务的守候程序目录,可以查看重起服务 /etc/init.d/network-manager restart
/etc/default/ 存/etc/init.d下的服务启动时要调用的默认配置.
使用service network-manager restart 也可以.
/etc/rc0.d/- /etc/rc5.d 中的 0,5代表不同的运行级别
/etc/profile 每个shell启动的初始程序文件.
/ect/passwd 文件,如果要禁止某用户登陆shell,只要把它的默认shell改成/usr/etc/nologin 或/bin/false即可.
/etc/vim/vimrc vim的配置文件,可以在里面加上如下内容: set number set tabstop=4 set showmatch # {}匹配显示。
/etc/sudoers sudo的配置文件: 可以使 linux sudo命令时记住密码
> visudo -f /etc/sudoers #必须使用visudo,否则无法修改. 也可先把chmod 777 修改后再chmod 0440
%admin ALL=(ALL) ALL
改為
%admin ALL=(ALL) NOPASSWD: NOPASSWD: ALL
vi使用
/etc/vim/vimrc vim的配置文件,可以在里面加上如下内容: set number set tabstop=4 set showmatch # {}匹配显示。
:%s/##/xxxx/g 会把##替换为xxxx.
/abc 开始搜索 n搜索指向下一个被搜索到的内容.
u 撤销.
左ctrl+r 恢复.
:w !sudo tee % 保存时如果没有root权限时: 操作过程 :w !sudo tee %=> 请按enter 或其它命令继续 [enter] => W12: 警告: 文件 "my.cnf" 已变动,并且在 Vim 中的缓冲区也已变动 确定([O]), 加载文件((L)) [L] => :q 退出
:set number / :set nu 显示行号
:set nonumber / :set nonu 去除行号
cron相关 分 小时 日 月 星期 命令 0-59 0-23 1-31 1-12 0-6 command (取值范围,0表示周日一般一行对应一个任务) 系统的主配置文件:/etc/crontab crontab -e 显示与编辑当前和户的cron文件:/var/spool/cron/用户名.
服务管理
在需要管理的服务放在/etc/init.d/下,如mysql.server
chkconfig mysql.server on/off 打开关闭服务
chkconfig mysql.server 查看服务当前状态
sysv-rc-conf 可以通过text界面配置,里面有1,2,3,4,5,6,s按运行级别配置.很好命名用.
update-rc.d -f XXXX remove 禁止启动 (ubuntu可用)
update-rc.d -f XXXX defaults 启动 (ubuntu可用)
rc6.d重新启动 (千万不要把initdefault 设置为6 )
rc5.d进入图形模式的运行级别是5,就是说在中的S开头进程都会运行,而S代表的是Start,后面的数字表示执行顺序,不要改.
关闭开机启动,直接把文件名由S=>K测试后发现不行,必须运行: update-rc.d -f XXXX remove 才可以.
rc4.d 没有用到
rc3.d表示网络多用户文本模式.
rc2.d多用户,但是没有 NFS
rc1.d单用户模式就是,
rc0.d如果是就是关机,其中没有S开头的,都是K开头的进程名字,K代表的是Kill.
S与1一样,表示single用户.
[注: ubuntu比较特殊:默认级别为2,但2,3,4,5级别完全一样.都是多用户,带x界面的.]
runlevel 查看当前的运行级别,例如输出:N 2,n表示上一次运行级别没有,当前是2.
文件传输:
使用rcp/scp/rsync命令,此命令使用ssh传书数据.所以在使用的机器上要装好ssh客户端,而要上传的server上要装好ssh server.
rcp -r ./testdir nancy@10.143.134:/home/nancy 这样就把testdir的目录传输到10.143.134的/home/nancy文件夹下了.
rcp ./test.txt nancy@10.143.134:/home/nancy 把文件test.txt传到10.143.134的/home/nancy文件夹下.
rsync -r ./testdir nancy@10.143.134:/home/nancy 它传输的更快,它可以对比两边的文件差别,只传输差别的.
scp 与 rcp的功能一样.没发现有什么差别.
scp -P 2838 ./ashell root@192.168.4.2:/root/bbat 测试通过 把./ashell传到4.2上的/root/bbat目录下.
scp hadoop@192.168.5.22:/home/hadoop/.ssh/id_rsa.pub /home/hadoop/.ssh/jobtracker_rsa.pub 从5.22复制到本机.
wget -c ....tar.gz 可以断点下载文件.
ssh在首次连接时会提示公钥确认。这会导致某些自动化任务失败.
The authenticity of host 'fran3 (192.168.3.182)' can't be established. ECDSA key fingerprint is 09:ee:8b:56:86:c3:3b:75:08:6e:c8:41:78:33:e7:e7. Are you sure you want to continue connecting (yes/no) 关闭操作: > vi /etc/ssh/ssh_config 在HOST *下加入 StrictHostKeyChecking no
ftp相关
ftp命令
> ftp
ftp> open xxx.com 21
输入用户名密码
ftp> quit
网络相关
ifconfig eth0 up/down 启用/禁用网卡
curl http://baidu.com/brand/index/edit/id/65 直接打开远程文件.
ab -n1000 -c100 http://baidu.com/brand/index/edit/id/65 ab压力测试.
dig baidu.com 查找dns解析的信息.比nslookup好用一些.
nslookup baidu.com 查找dns解析的信息.
sockstat -l 查看本机所有有对外对内端口,不过需要安装 apt-get install sockstat后才能用.
netstat -at 列出所有(all) tcp 连接.
lsof -Pnl +M -i4 列出所有已占用的端口,感觉比netstat详细.
netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 查看系统的tcp连接数
安装软件
apt-get install/update/purge(把配置文件也清掉)/remove(保留配置文件) xxx (ubuntu)
dpkg -l | grep keepalived 检查指定包是否已安装.
yum install/update xxx (redhat)
rpm -ivh xxx.rpm (redhat)
zypper install/update xxx (suse)
(在ubuntu安装rpm包)
1.apt-get install rpm alien [安装alien]
2 alien -d xxx.rpm [产生一个xxx.deb文件]
3.dpkg -i xxx.deb [安装deb文件] dpkg -l | grep keepalived 检查指定包是否已安装.
解压:
tar zxvf xxx.tar.gz
tar jxvf xxx.tar.bz2
tar zxf xxx.tgz
gzip -d xxx.gz
压缩:
tar -cvf name.tar /dir1 /dir2
gzip name.tar
ps aux | grep php | gzip -9 > tt.txt.gz #不会生成tt.txt文件.
ps aux > tt.txt | gzip -9 > tt.txt.gz #会在当前目录生成tt.txt文件. -1或--fast表示最快压缩方法(低压缩比), -9或--best表示最慢压缩方法(高压缩比)。 -6系统缺省值.
时间管理
date 显示日期
date -s 2008-09-01 设置日期
date -s 20:01:52 设置时间
ntpdate -u stdtime.gov.hk
管道
| more 手动翻页
| grep str 在结果中查找
执行命令
source filename 把filename中的内容读出来在当前shell下执行
nohup ls>/dev/null & 挂起执行命令.
分区相关
fdisk -l 显示所有分区
mount /dev/sda5 /home/wind/
umount /dev/sda5
链接
ln -s /usr/local/bin/abc /home/桌面
代理设置
/etc/profile中加入:
http_proxy=http://192.168.1.122:9087
export http_proxy
对ping伪伪命令无反应
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 可以加入/ect/rc.d/rc.local文件,这样就可以对ping命令无反应了.
发表评论
-
linux回到上次目录与历史命令查找快捷方式
2019-06-20 10:27 854一、回到上次操作的目录# cd -进入上次访问目录二、历史命令 ... -
mac iterm2 rz命令安装
2016-11-08 11:17 1470安装配置 安装lrzsz 使用 brew i ... -
phpdocument的使用
2016-10-25 16:24 587官网: https://www.phpdoc.org/ ... -
Linux命令的组成规则及其全拼单词
2016-10-14 09:14 927########################### ... -
angularjs调用两次的原因
2015-11-09 17:44 3504AngularJS 标签: angularjs javas ... -
linux: no space left
2015-11-06 19:36 734发现在 /var/lib/docker/volumnes ... -
docker空间不足 Unable to open the database file: unable to open database fi
2015-10-23 11:53 1911命令行报错如下: Unable to open the d ... -
请成员加入本地环境安装
2015-10-23 11:31 0----------------------------本地 ... -
git subtree用法
2015-10-15 18:33 1043来源于:http://aoxuis.me/posts/20 ... -
mac 上安装与卸载docker
2015-10-15 10:52 46531.安装Docker: 1.1 brew update ... -
Git全局配置和单个仓库的用户名邮箱配置
2015-08-28 09:57 1224学习git的时候, 大家刚开始使用之前都配置了一个全局的用 ... -
phpstorm安装及配置vim插件
2015-08-09 10:22 1071用这个写网页代码是比较爽的,当然还有很多优秀的软件。 ... -
mac,phpstorm+vagrant+xdebug
2015-08-07 16:57 965参考地址: http://my.oschina.n ... -
在Nginx中加Basic认证
2015-08-04 17:22 577#1. 新建一个pw.pl文件专门用来生成密码#!/usr ... -
mac下面的科学计算器
2015-07-16 17:03 719打开计算器, 按Command+1,2,3 -
keepalive+haproxy实验
2015-07-07 23:05 950平台: Mac 工具: Vagrant 系统: CentOS6 ... -
Centos6.5使用yum安装mysql——快速上手必备
2015-07-06 19:47 913第1步、yum安装mysql[root@stonex ~] ... -
MAC下切换到zsh,打造有git提示的美化shell
2015-07-06 11:51 1586下载 ohmyzsh: git clone git: ... -
mac工作软件推荐
2015-07-06 11:36 890mac上的Terminal + bash + screen组 ... -
基于vagrant的redis主从实验
2015-07-05 14:04 1255平台: Mac 工具: Vagrant ...
相关推荐
### Linux常用命令详解 #### 一、文件管理 1. **ls**:此命令用于列出当前目录中的文件和子目录。通过使用不同的选项,可以改变其输出格式。 - `-l`:使用长格式列表输出,包括文件权限、拥有者、组、大小等详细...
以下是一些关于Linux常用命令的详细说明: 1. **pwd**:`pwd`(Print Working Directory)命令用于显示当前工作目录,即用户当前所在的目录路径。 2. **cd**:`cd`命令用于切换目录。例如,`cd /`进入根目录,`cd ...
LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 LINUX常用命令全集 ...
"最全Linux常用命令大全-linux常用命令全集" 本文档对 Linux 中最常用的命令进行了详细的总结和说明,涵盖了文件和目录管理、磁盘空间管理等方面的命令。 文件和目录管理命令 1. `pwd` 命令:显示当前目录 `pwd`...
### Linux常用命令详解知识点 #### 一、命令格式与通配符 - **命令格式**: - **命令**:指定要执行的操作。 - **选项**:改变命令的行为方式,通常以`-`开头,多个选项可以用空格或直接连接的方式给出。 - **...
linux常用命令大全 1. **ls**:列出目录内容 2. **cd**:改变当前目录 3. **pwd**:显示当前工作目录 4. **mkdir**:创建目录 5. **rmdir**:删除空目录 6. **cp**:复制文件或目录 7. **mv**:移动或重命名文件或...