百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

Linux 常用命令

sinye56 2024-11-20 21:23 6 浏览 0 评论

在日常工作学习中,总是忘记 linux 命令怎么敲,特此做一下记录,方便翻阅查找


1、定时任务

  • 向 /etc/crontab 添加一条定时任务
  • service crond start 启动服务
  • service crond stop 关闭服务
  • service crond restart 重启服务
  • service crond reload 重新载入配置


  • 在以上任何值中,星号(*)可以用来代表所有有效的值。譬如,月份值中的星号意味着在满足其它制约条件后每月都执行该命令。
  • 整数间的短线(-)指定一个整数范围。譬如,1-4 意味着整数 1、2、3、4。
  • 用逗号(,)隔开的一系列值指定一个列表。譬如,3, 4, 6, 8 标明这四个指定的整数。
  • 正斜线(/)可以用来指定间隔频率。在范围后加上 /<integer> 意味着在范围内可以跳过 integer。
  • 譬如,0-59/2 可以用来在分钟字段定义每两分钟。间隔频率值还可以和星号一起使用。例如,*/3 的值可以用在月份字段中表示每三个月运行一次任务。
  • 开头为井号(#)的行是注释,不会被处理
实例 1:每 1 分钟执行一次 command

命令:* * * * * command

实例 2:每小时的第 3 和第 15 分钟执行
命令:3,15 * * * * command

实例 3:在上午 8 点到 11 点的第 3 和第 15 分钟执行
命令:3,15 8-11 * * * command

实例 4:每隔两天的上午 8 点到 11 点的第 3 和第 15 分钟执行
命令:3,15 8-11 */2 * * command

实例 5:每个星期一的上午 8 点到 11 点的第 3 和第 15 分钟执行
命令:3,15 8-11 * * 1 command

实例 6:每晚的 21:30 重启 smb 
命令:30 21 * * * /etc/init.d/smb restart

实例 7:每月 1、10、22 日的 4:45 重启 smb 
命令:45 4 1,10,22 * * /etc/init.d/smb restart


实例 8:每周六、周日的 1:10 重启 smb
命令:10 1 * * 6,0 /etc/init.d/smb restart

实例 9:每天 18:00 至 23:00 之间每隔 30 分钟重启 smb 
命令:0,30 18-23 * * * /etc/init.d/smb restart

实例 10:每星期六的晚上 11:00 pm 重启 smb 
命令:0 23 * * 6 /etc/init.d/smb restart


实例 11:每一小时重启 smb 
命令:* */1 * * * /etc/init.d/smb restart

实例 12:晚上 11 点到早上 7 点之间,每隔一小时重启 smb 
命令:* 23-7/1 * * * /etc/init.d/smb restart

实例 13:每月的 4 号与每周一到周三的 11 点重启 smb 
命令:0 11 4 * mon-wed /etc/init.d/smb restart

实例 14:一月一号的 4 点重启 smb 
命令:0 4 1 jan * /etc/init.d/smb restart

实例 15:每小时执行 /etc/cron.hourly 目录内的脚本
命令:01   *   *   *   *     root run-parts /etc/cron.hourly
说明:run-parts这个参数了,如果去掉这个参数的话,后面就可以写要运行的某个脚本名,而不是目录名了
  • 查看是否有定时任务在运行: pgrep cron
  • 开启定时任务日志
# 将/etc/rsyslog.d/50-default.conf 里的 #cron.* 去掉注释,重启则可以在 /var/log/cron.log 可以查看日志
service rsyslog restart


2、查看文件及目录

  • ls -l(-l是字母不是“1”)就能展示出是文件还是目录,它的大小、修改日期和时间、文件或目录的名字以及文件的属主和它的权限
  • ls -lh 组合选项,以易读方式来显示大小
  • ls -a 列出所有文件包括以 ‘.’ 开头的隐藏文件
  • ls -ltr 组合选项能以文件或目录的最新修改时间的次序来显示它们
  • ls -lS 组合选项能按文件从大到小的次序显示
  • ls -R 选项能列出非常长的目录树
  • ls -l /home 列出 /home 目录下的文件

3、定义别名

  • alias ls="ls -l" 定义 ls 命令为 ls -l,以后执行 ls 时,就相当于执行 ls -l
  • alias 查看当前定义的别名
  • unalias ls 删除定义的别名

4、压缩文件和文件夹

  • .tar 是打包过的文件,可以将多个文件合并为一个压缩包,但是该命令并没有压缩功能,需要与 gzip 或 bzip2 一同使用,.tar.gz 才是打包压缩过的文件
  • .tar.gz 常见于 unix 系统,在 ubuntu 或 macos 可以直接解压,而 .zip 常见于 windows 系统,zip 在 linux 系统需要安装才能使用
tar命令也提供了很多有用的选项,如下所示。

-c:新建打包文件;
-t:查看打包文件中包含哪些文件名;
-x:解包或解压缩;
-j:通过bzip2的支持进行压缩/解压缩;
-z:通过gzip的支持进行压缩/解压缩;
-C(大写C):指定特定目录解压;
-p:打包过程中保留源文件的属性和权限;
-v:输出打包过程中正在处理的文件名。

tar -zcvf FileName.tar.gz DirName       # 打包并压缩 目录 DirName
tar -zcvf FileName.tar.gz FileName      # 打包并压缩 文件 FileName
tar -zxvf FileName.tar.gz               # 解压
tar -C DesDirName -zxvf FileName.tar.gz # 解压到目标路径
  • 安装 apt-get install zip unzip
  • 压缩文件 zip -r pic.zip mypic.jpg
  • 压缩文件夹 zip -r pic.zip ./*
  • 解压缩到当前目录 unzip pic.zip
  • 解压缩到指定目录 unzip -o -d /data pic.zip

5、删除文件和文件夹

  • rm -rf /tmp 删除 tmp 文件夹及其下的所有文件和目录
  • rm -f /tmp/test.txt 删除文件
  • rm text.txt 删除文件
  • -r 向下递归,不管有多少级目录,一并删除
  • -f 直接强行删除,没有任何提示

6、创建文件或文件夹

  • touch console.log
  • mkdir /home/app

7、打开xftp, 传输文件

  • 上传:拖动文件到 Xshell 命令框,或者 put 【文件名】或者 put -r 【文件夹】
  • 下载:get 【文件名】或者 get r 【文件夹】, 查看下载路径 lpwd
  • 输入 help 查看命令帮助
  • 也可以使用 rz(上传) sz(下载) 工具来实现,apt-get install lrzsz
  • 推荐使用 WinSCP 软件作为上传下载工具

8、复制 | 移动 文件

  • 复制:cp -r 【文件夹|文件】【文件夹】,-r 为递归所有文件和目录
  • 移动:mv -f 【文件夹|文件】【文件夹】,-f 为强制覆盖同名对象
  • 两台服务器之间 copy 文件
scp -r root@192.168.38.110:/root/index.js /home/dev/ops/data  # 复制到本机
scp -r /home/dev/ops/data/index.js root@192.168.38.110:/root  # 复制到远程

9、vim 编辑器使用

  • 安装 apt-get install vim
  • 打开文件 vim /data/index.js
  • 跳转到行,输入数字 120 再按 + 号
  • 编辑输入 按 insert
  • 退出编辑 按 Esc
  • 保存 :wq 或 退出 :q,:wq! 、:q! 表示强制处理

10、cat 查看文件

  • cat /data/test.js
  • cat ./src/article/api.js | tail -n +1000| head -n 500 (查看从第1000行起的500行)

11、查看当前时间

  • date

12、登录其他机器

  • ssh -p 22 root@172.17.38.110

13、查找文件

  • find /usr/share -name test.jpg // find [path] [option] [action]

14、打开 gz 后缀文件

  • vim -b /var/log/syslog.1.gz

15、向 .env 等文件里添加内容

# 追加一行
echo NODE_ENV=dev >> .env
# 将所有环境变量导入
env >> .env

16、查看端口被占用

# 查看已经连接的服务端口(ESTABLISHED)
netstat -a
# 查看所有的服务端口(LISTEN,ESTABLISHED)
netstat -ap
# 查看指定端口,可以结合grep命令:
netstat -ap | grep 8080

17、修改 ssh 端口

vim /etc/ssh/sshd_config
# 修改端口:
Port 12345
# 再重启 ssh
service ssh restart
# 注意,如果用的是云主机,需要打开相应的端口权限


未完待续......

相关推荐

Linux在线安装JDK1.8

首先在服务器pingwww.baidu.com查看是否可以连网然后就可以在线下载一、下载安装JDK1.81、在下载安装的同时做好一些准备工作...

Linux安装JDK,超详细

1、了解RPMRPM是Red-HatPackageManager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux...

Linux安装jdk1.8(超级详细)

前言最近刚购买了一台阿里云的服务器准备要搭建一个网站,正好将网站的一个完整搭建过程分享给大家!#一、下载jdk1.8首先我们需要去下载linux版本的jdk1.8安装包,我们有两种方式去下载安装...

Linux系统安装JDK教程

下载jdk-8u151-linux-x64.tar.gz下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.ht...

干货|JDK下载安装与环境变量配置图文教程「超详细」

1.JDK介绍1.1什么是JDK?SUN公司提供了一套Java开发环境,简称JDK(JavaDevelopmentKit),它是整个Java的核心,其中包括Java编译器、Java运行工具、Jav...

Linux下安装jdk1.8

一、安装环境操作系统:CentOSLinuxrelease7.6.1810(Core)JDK版本:1.8二、安装步骤1.下载安装包...

Linux上安装JDK

以CentOS为例。检查是否已安装过jdk。yumlist--installed|grepjdk或者...

Linux系统的一些常用目录以及介绍

根目录(/):“/”目录也称为根目录,位于Linux文件系统目录结构的顶层。在很多系统中,“/”目录是系统中的唯一分区。如果还有其他分区,必须挂载到“/”目录下某个位置。整个目录结构呈树形结构,因此也...

Linux系统目录结构

一、系统目录结构几乎所有的计算机操作系统都是使用目录结构组织文件。具体来说就是在一个目录中存放子目录和文件,而在子目录中又会进一步存放子目录和文件,以此类推形成一个树状的文件结构,由于其结构很像一棵树...

Linux文件查找

在Linux下通常find不很常用的,因为速度慢(find是直接查找硬盘),通常我们都是先使用whereis或者是locate来检查,如果真的找不到了,才以find来搜寻。为什么...

嵌入式linux基本操作之查找文件

对于很多初学者来说都习惯用windows操作系统,对于这个系统来说查找一个文件简直不在话下。而学习嵌入式开发行业之后,发现所用到的是嵌入式Linux操作系统,本想着跟windows类似,结果在操作的时...

linux系统查看软件安装目录的方法

linux系统下怎么查看软件安装的目录?方法1:whereis软件名以查询nginx为例子...

Linux下如何对目录中的文件进行统计

统计目录中的文件数量...

Linux常见文件目录管理命令

touch用于创建空白文件touch文件名称mkdir用于创建空白目录还可以通过参数-p创建递归的目录...

Linux常用查找文件方法总结

一、前言Linux系统提供了多种查找文件的命令,而且每种查找命令都具有其独特的优势,下面详细总结一下常用的几个Linux查找命令。二、which命令查找类型:二进制文件;...

取消回复欢迎 发表评论: