01. Linux常用命令

  1. pwd: 查看当前工作目录的全路径

  2. date +%Y-%m-%d 查看当前系统的时间
    date +%Y-%m-%d --date="-1 day" date +%Y-%m-%d --date="-1 month" date +%Y-%m-%d --date="-1 year"
    date -s “2016-05-23 01:01” 设置时间(重启后不生效)hwclock -w (重启生效)(测试没有通过)

  3. date --help 帮助命令

  4. who 谁在登录服务器

  5. shutdown -h now # 立刻关机 halt # 等于立刻关机
    shutdown -h +10 # 10分钟以后关机
    shutdown -h 12:00:00 # 12点整关机
    reboot # 重启

  6. clear 清屏 快捷键 Ctrl + L

  7. Ctrl + C 退出当前的进程

  8. Ctrl + Z bg + jobid 挂起当前的进程到后台
    fg + jobid 让后台的进程返回到前台执行

  9. ls -alh 查看目录信息

  10. mkdir -p aaa/bbb/ccc 创建文件夹

  11. rm -rf 删除文件,文件夹命令

  12. mv 移动文件夹,修改文件名 rename .txt .txt.bak * 批量更改文件名 cp 拷贝文件

  13. touch a.txt 创建空文件

  14. 重定向 >> 追加内容

  15. vi文本编辑器
    a 在光标后一位插入
    A 在该行的最后插入
    o 在下一行插入
    I 在一行的最前面插入
    gg 直接跳到文件的首行
    G 直接跳到文件的末行
    dd 删除一行
    3dd 删除3行
    yy 复制一行
    3yy 复制3行
    p 粘贴
    u undo
    v 进入字符选择模式,按y复制,按p粘贴
    ctrl + v 进入块选择模式, 按y复制,按p粘贴
    shift + v j进入行选择模式, 按y复制,按p粘贴
    :set nu 显示行号 :set nonu 取消行号
    :/查找的内容 查找 n 向下找下一个 N 向上找上一个
    :%s/sad/bbb 查找文件中所有的sad,替换为bbb

  16. less somefile 翻页查看文件内容 下翻一页 空格, 上翻一页b,上下翻一行 上下的箭头 搜索关键字:/keyword 跳到文件末尾:G 跳到文件的首行:gg 退出less:q

  17. tail -f install.log 小f跟踪文件的唯一inode号,就算文件改名后,还是跟踪原来的这个inode表示的文件
    tail -F install.log 大F按照文件名来跟踪

  18. tar -zcvf a.tar.gz aaa/ 打包并压缩
    tar -zxvf a.tar.gz 解包并解压缩
    tar -zxvf a.tar.gz -C /usr 解压到 /usr下面

  19. which ls 查找所执行的命令所在的路径

  20. find / -name “hadoop*” find / -name “hadoop*” -ls 从某个文件夹中开始查找某个文件

  21. grep hadoop(正则表达式) /etc/passwd 在指定的文件里查找相应的内容
    grep -v hadoop /etc/passwd 查询不包含hadoop的行
    grep aaa ./*.txt

  22. chmod 777 1.txt 修改文件的权限
    chmod +x 1.txt
    chmod u+rwx 1.txt
    chmod -R 777 aaa/

  23. chown root /u 将 /u 的属主更改为"root"。
    chown root:staff /u 和上面类似,但同时也将其属组更改为"staff"。
    chown -hR root /u 将 /u 及其子目录下所有文件的属主更改为"root"。

  24. chgrp staff /u 将 /u 的属组更改为"staff"。
    chgrp -hR staff /u 将 /u 及其子目录下所有文件的属组更改为"staff"。

  25. useradd hadoop 添加一个用户
    passwd hadoop 给hadoop用户修改密码
    userdel -r hadoop 删除一个用户
    linux下,如何创建一个用户组,并添加两个用户
    链接:https://zhidao.baidu.com/question/287961488.html

  26. 为用户配置sudo权限: 让root用户vi编辑sudoers文件, 然后普通用户就可以执行系统级别的指令。

  27. 挂载光驱:mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom1/ 将设备 /dev/cdrom 挂在到挂载点 /mnt/cdrom1/中
    挂载光盘镜像文件(.iso文件): mount -t iso9660 -o loop /home/hadoop/.iso文件 /mnt/centos
    卸载: unmount /mnt/centos

  28. df -h 查看磁盘空间

  29. du -sh * 统计文件的大小
    系统服务管理

  30. systemctl list-units --type=service 查看服务列表状态
    systemctl list-unit-files 列出所有已经安装的 服务 及 状态 (可为人所读, 内容简略、清晰)
    systemctl start sshd.service 开启一个服务
    systemctl stop sshd.service 停止一个服务
    systemctl restart sshd.service 重启一个服务
    systemctl status sshd.service 查看一个服务的状态
    systemctl enable sshd.service 开机自启动服务
    systemctl disable sshd.service 关闭开机自启动服务
    systemctl --failed 查看启动失败的服务列表
    进程管理

  31. ps -ef | grep ssh 查看相应的进程
    kill -9 进程号
    SSH免密登录 Secure Shell
    基于密钥的安全验证

  32. ssh-keygen 生成本机的密钥对(提示时,直接回车即可)
    ssh-copy-id mini2 把本机的公钥拷贝到目标机,并且加入到授权池。
    网络管理

  33. 主机名配置
    hostname 查看主机名
    vi /etc/hostname
    IP地址配置
    nmtui # 图形界面
    /etc/sysconfig/network-scripts 修改配置文件
    域名映射
    /etc/hosts

  34. netstat -nltp 系统中网络进程的端口监听情况
    Linux上常用软件安装方式
    1.二进制发布包
    软件已经针对具体平台编译打包发布,只要解压,修改配置即可(如 JDK、Tomcat、zookeeper)
    2.RPM发布包
    软件已经按照redhat的包管理工具规范RPM进行打包发布,需要获取到相应的软件RPM发布包,然后用RPM命令进行安装
    3.Yum在线安装
    软件已经以RPM规范打包,但发布在了网络上的一些服务器上,可用yum在线安装服务器上存在的rpm软件,并且会自动解决软件安装过程中的库依赖问题
    (注:类似于maven)
    4.源码编译安装
    软件以源码工程的形式发布,需要获取到源码工程后用相应开发工具进行编译打包部署
    例:
    C语言软件源码编译安装——redis服务器安装
    (用源码工程来编译安装)

  35. 到官网下载最新stable版

  36. 解压源码并进入目录 tar -zxvf redis-2.8.19.tar.gz -C ./redis-s rc/

  37. make
    如果报错提示缺少gcc,则安装gcc : yum install -y gcc
    如果报错提示:Newer version of jemalloc required
    则在make时加参数:make MALLOC=libc

  38. 安装redis,指定安装目录,如 /usr/local/redis
    make PREFIX=/usr/local/redis install

  39. 拷贝一份配置文件到安装目录下
    切换到源码目录,里面有一份配置文件 redis.conf,然后将其拷贝到安装路径下
    cp redis.conf /usr/local/redis/

  40. 启动redis
    cd /usr/local/redis
    bin/redis-server redis.conf
    高级文本处理命令

  41. cut命令可以从一个文本文件或者文本流中提取文本列
    cut -d’分隔字符’ -f fields ## 用于有特定分隔字符
    将 PATH 变量取出,找出第五个路径。

echo $PATH | cut -d’:’ -f 5

/usr/local/bin
将 PATH 变量取出,找出第三和第五个路径。
#echo P A T H c u t d : f 3 , 5 / s b i n : / u s r / l o c a l / b i n 35.1 / d s e d 2 d e x a m p l e e x a m p l e s e d 2 , PATH | cut -d ':' -f 3,5 /sbin:/usr/local/bin 35. 1/ 删除:d命令 sed '2d' example -----删除example文件的第二行。 sed '2, d’ example -----删除example文件的第二行到末尾所有行。
sed ‘$d’ example -----删除example文件的最后一行。
sed '/test/'d example -----删除example文件所有包含test的行。

2/ 替换:s命令
sed ‘s/test/mytest/g’ example

在整行范围内把test替换为mytest。如果没有g标记,则只有每行第一个匹配的test被替换成mytest。

sed -n ‘s/^test/mytest/p’ example

(-n)选项和p标志一起使用表示只打印那些发生替换的行。也就是说,如果某一行开头的test被替换成mytest,就打印它。

sed ‘s/^192.168.0.1/&localhost/’ example

&符号表示追加一个串到找到的串后。所有以192.168.0.1开头的行都会被替换成它自已加 localhost,变成192.168.0.1localhost。

  1. awk命令
    显示/etc/passwd的账户

cat /etc/passwd |awk -F ‘:’ ‘{print $1}’

显示/etc/passwd的账户和账户对应的shell,而账户与shell之间以逗号分割,而且在所有行添加列名name,shell,在最后一行添加"blue,/bin/nosh"。
cat /etc/passwd |awk -F ‘:’ ‘BEGIN {print “name,shell”} {print $1","$7} END {print “blue,/bin/nosh”}’
37. crontab配置
1.命令功能:通过crontab 命令,我们可以在固定的间隔时间执行指定的系统指令或 shell script脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。这个命令非常适合周期
性的日志分析或数据备份等工作。
2.命令格式:crontab [-u user] [ -e | -l | -r ]
3.配置基本格式:
*  *  *  *  *  command
分  时  日  月  周  命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时0~23(0表示0点) 7-9表示:8点到10点之间
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
4.例
*/1 * * * * date >> /root/date.txt
上面的例子表示每分钟执行一次date命令
30 21 * * * /usr/local/etc/rc.d/httpd restart
上面的例子表示每晚的21:30重启apache。
45 4 1,10,22 * * /usr/local/etc/rc.d/httpd restart
上面的例子表示每月1、10、22日的4 : 45重启apache。
10 1 * * 6,0 /usr/local/etc/rc.d/httpd restart
上面的例子表示每周六、周日的1 : 10重启apache。
0,30 18-23 * * * /usr/local/etc/rc.d/httpd restart
上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启apache。
0 23 * * 6 /usr/local/etc/rc.d/httpd restart
上面的例子表示每星期六的11 : 00 pm重启apache。

  • */1 * * * /usr/local/etc/rc.d/httpd restart
    上面的例子每一小时重启apache
  • 23-7/1 * * * /usr/local/etc/rc.d/httpd restart
    上面的例子晚上11点到早上7点之间,每隔一小时重启apache
    0 11 4 * mon-wed /usr/local/etc/rc.d/httpd restart
    上面的例子每月的4号与每周一到周三的11点重启apache
    0 4 1 jan * /usr/local/etc/rc.d/httpd restart
    上面的例子一月一号的4点重启apache
  1. scp
    scp install.sh root@ S E R V E R : SERVER: PWD
  2. 查看后台进程
    ps -ef | grep redis
  3. 查看端口号
    netstat -nltp
  4. 普通用户切换到超级用户
    su -(exit退出)
  5. 超级用户切换到普通用户
    su - hadoop
  6. 建立软连接的命令
    ln -s [源目标] [链接名字]
  7. 查看发行版本命令
    lsb_release -a

45.CentOS 查看系统 CPU 个数、核心数、线程数
1、查看 CPU 物理个数
  grep ‘physical id’ /proc/cpuinfo | sort -u | wc -l

2、查看 CPU 核心数量
  grep ‘core id’ /proc/cpuinfo | sort -u | wc -l

3、查看 CPU 线程数
  grep ‘processor’ /proc/cpuinfo | sort -u | wc -l

4、查看 CPU 型号
  dmidecode -s processor-version

5、查看 CPU 的详细信息:
  cat /proc/cpuinfo

发布了85 篇原创文章 · 获赞 12 · 访问量 3741

猜你喜欢

转载自blog.csdn.net/fanjianhai/article/details/103776815
01.