linux la 的使用方法,Linux简介及常用命令使用4--linux高级命令与技巧(示例代码)

top

几个磁盘

fdisk -l

磁盘空间 df -lh

df -al

查看进程:ps -ef“grep java

杀死进程:kill -9 进程号

more中过滤

more xxx |grep www.makaidong.com

安装linux后配置ip

Vim /etc/sysconfig/network-scripts/ifcfg-eth5

IPADDR=192.168.42.142

NETMASK=255.255.255.0

GATEWAY=192.168.42.1

启动关闭网卡

Ifdown eth5

Ifup eth5

service network restart 优先

2:无法上网 配置dns

vim /etc/resolv.conf

dns

nameserver 8.8.8.8

nameserver 114.114.114.114

nameserver 223.5.5.5

nameserver 223.6.6.6

测试:

ping www.makaidong.com

yum安装软件

rpm

yum -y install mysql

shell基础

#!/bin/sh

#print hello world in the console window

a="hello world!hello makaidong"

echo "Hi, $as"

就不会输出“Hi, hello worlds”,而是输出“Hi,”。这是因为Shell把$as当成一个变量,而$as未被赋值,其值为空。

正确的方法是:

echo "Hi, ${a}s"

echo $a

ps -aux|grep ‘ambari‘

tail -f -n 200 add_run_7.sh.log

切换到root

sudo su -

切换到其他用户

sudo su hive

Top

df -lh

find 递归查找制定文件名

find 201412/ -type f -name "*.txt"

安装

复制 通配符

cp -r *_result bak/

wordcount

wc -l 统计 通配符

wc -l 3_net_*/*

scp -r makaidong [email protected]:/mnt/

#!/bin/sh

a=10

b=20

if [ $a == $b ]

then

echo "a is equal to b"

fi

if [ $a != $b ]

then

echo "a is not equal to b"

fi

[ -f "$file" ] 判断$file是一个文件

[ ! -f "$file" ] 判断$file不是一个文件

history low great

[ $a -lt 3 ] 判断$a的值是否小于3,同样-gt和-le分别表示大于等于或小于等于

num1-eq num2 等于 [ 3 -eq $mynum ]

num1-ne num2 不等于 [ 3 -ne $mynum ]

num1-lt num2 小于 [ 3 -lt $mynum ]

num1-le num2 小于或等于 [ 3 -le $mynum ]

num1-gt num2 大于 [ 3 -gt $mynum ]

num1-ge num2 大于或等于 [ 3 -ge $mynum ]

[ -n "$a" ] 判断变量$a是否有值,测试空串用-z

文件比较运算符

[-e filename] 如果 filename存在,则为真 [ -e /var/log/syslog ]

-d filename 如果 filename为目录,则为真 [ -d /tmp/mydir ]

-r filename 如果 filename可读,则为真 [ -r /var/log/syslog ] read

-w filename 如果 filename可写,则为真 [ -w /var/.txt ] write

-x filename 如果 filename可执行

-z string 如果 string长度为零,则为真 [ -z "$myvar" ]

-n string 如果 string长度非零,则为真 [ -n "$myvar" ]

string1= string2 如果 string1与 string2相同,则为真 [ "$myvar" = "one two three" ]

string1!= string2 如果 string1与 string2不同,则为真 [ "$myvar" != "one two three" ]

while [ cond1 ] && { || } [ cond2 ] …; do

done

for var in …; do

done

for (( cond1; cond2; cond3 )) do

done

until [ cond1 ] && { || } [ cond2 ] …; do

done

linux shell 数组建立及使用技巧

shell数组+for循环

#!/bin/bash

for i in ip1 ip2 ip3 ip4

do

echo ssh [email protected]$i

echo "已重启$i apache 服务"

done

exit

sh -x *.sh

生成 测试数据的shell脚本

data_create.sh

rm -rf ./data.txt

touch data.txt

for((i=0;i<2000;i++))

do

str=‘,name‘;

name=${i}${str}${i}

#echo $name

echo $name>> data.txt

done

echo ‘show testdata‘

more data.txt

chmod u+x data_create.sh

运行脚本

sh -x data_create.sh

sed 替换 递归 正则

sed -i "s/

crontab 定时执行shell

20 * * * * sh -x /root/start.sh >> start.log 2>&1

远程机器ping不同本机

本机可以ping通远程,那可以这样取:

先考到自己的用户目录下:

在目标机器上:cp tmpdir.sql.gz /home/makaidong/

然后在本机:

scp -r [email protected]:/home/makaidong/\*.sql.gz .

注 :\*转义

nohup

nohup hive --service hiveserver 2>&1 &

dos2unix windows-linux shell格式转换

find . -name "*.conf" | xargs dos2unix

var.sh 就写:year=2015

shell import source引入其他shell

#!/bin/bash

#在其他目录:source ./sh/var.sh #sh目录下 或source sh/var.sh

source var.sh

rm -rf ./data.txt

touch data.txt

for((i=0;i

do

str=‘,name‘;

name=${i}${str}${i}

#echo $name

echo $name>> data.txt

done

awk $(awk -F"=" ‘$1== {print $2}

压缩:

zip 递归压缩文件夹(目录)

zip -r ./201412.zip ./201412/* -r

Linux压缩保留源文件的方法:

gzip –c filename > filename.gz

Linux解压缩保留源文件的方法:

gunzip –c filename.gz > filename

呵,基本上我现在常用的四个命令如下:

压缩成gzip文件:

tar -zcvf shell.tar.gz shell/

将gzip文件解压:

tar -zxvf shell.tar.gz

压缩为bz2文件:

tar -jcvf shell.tar.bz2 shell/

将bz2文件解压:

tar -jxvf shell.tar.bz2

tar -zxvf makaidong.tar.gz -C /zzz/bbs

gunzip makaidong.tar.bz2.gz

tar -jxvf makaidong.tar.bz2

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值