美文网首页
记录几个linux命令

记录几个linux命令

作者: zhouwude | 来源:发表于2018-11-13 13:09 被阅读12次

linux命令

echo

  • 在命令行输出一段信息,引号是可选的echo 'message'
  • 输出带有变量的信息 echo "My path is $PATH"
  • 打印一个没有结尾换行符的消息 echo -n "Hello World"
  • 启用反斜杠转义解释(特殊字符) echo -e "Column 1\tColumn 2"

>和>>

当输入某个命令需要保存返回的内容的时候会>>>
ls > file 会覆盖之前的内容
ls >> file 会在后面添加内容

ln 命令

这是linux中一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另外一个位置建立一个同步的链接,这个命令最常用的参数是-s,具体用法是:ln -s 源文件 目标文件。当 我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的 目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

-s 是代号(symbolic)的意思。

  1. 命令格式 ln [参数][源文件或目录][目标文件或目录]
  2. 创建一个文件(或文件夹)的符号软链接: ln -s path/to/file(源文件) path/to/symlink(目标文件)
  3. 覆盖现有符号以指向不同的文件 ln -sf path/to/new_file path/to/symlink
  4. 创建一个硬链接到一个文件 ln path/to/file(源文件) path/to/hardlink(目标文件)

软链接:

  1. 软链接,以路径的形式存在。类似于Windows操作系统中的快捷方式
  2. 软链接可以 跨文件系统 ,硬链接不可以
  3. 软链接可以对一个不存在的文件名进行链接
  4. 软链接可以对目录进行链接

硬链接:

  1. 硬链接,以文件副本的形式存在。但不占用实际空间。
  2. 不允许给目录创建硬链接
  3. 硬链接只有在同一个文件系统中才能创建

通过ls -al的方式可以查看目录下的文件是否是通过ln的方式生成的
python2.7 -> ../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7
说明源文件在../../System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7目录下

which 命令

路径的查找

  1. 搜索PATH环境变量并显示任何匹配可执行文件的位置 which executable
  2. 如果有多个可执行文件匹配,显示全部 which -a executable

grep命令

grep

Matches patterns in input text.
Supports simple patterns and regular expressions.

  • Search for an exact string:
    grep search_string path/to/file

  • Search in case-insensitive mode:
    grep -i search_string path/to/file

  • Search recursively (ignoring non-text files) in current directory for an exact string:
    grep -RI search_string .

  • Use extended regular expressions (supporting ?, +, {}, () and |):
    grep -E ^regex$ path/to/file

  • Print 3 lines of [C]ontext around, [B]efore, or [A]fter each match:
    grep -C|B|A 3 search_string path/to/file

  • Print file name with the corresponding line number for each match:
    grep -Hn search_string path/to/file

  • Use the standard input instead of a file:
    cat path/to/file | grep search_string

  • Invert match for excluding specific strings:
    grep -v search_string

scp命令
使用SSH上的安全复制协议在主机之间复制文件

  • 复制本地文件到远程服务器:
    scp path/to/local_file remote_host:path/to/remote_file

  • 将文件从远程主机复制到本地文件夹:
    scp remote_host:path/to/remote_file path/to/local_dir

  • 递归地将目录的内容从远程主机复制到本地目录:
    scp -r remote_host:path/to/remote_dir path/to/local_dir

  • 在通过本地主机传输的两个远程主机之间复制文件:
    scp -3 host1:path/to/remote_file host2:path/to/remote_dir

  • 连接到远程主机时使用特定的用户名:
    scp path/to/local_file remote_username@remote_host:path/to/remote_dir

  • 使用特定的ssh私钥与远程主机进行身份验证:
    scp -i ~/.ssh/private_key local_file remote_host:/path/remote_file

  • 复制本地文件到远程服务器使用特定的端口号:
    scp -P port path/to/local_file remote_name@remote_host:path/to/remote_file

df
概述文件系统磁盘空间的使用情况

  • 显示所有文件系统及其磁盘使用情况:
    df

  • 以人类可读的形式显示所有文件系统及其磁盘使用情况:
    df -h

  • 显示包含给定文件或文件夹的文件系统及其磁盘使用情况:
    df path/to/file_or_folder

tar
归档工具。
通常与压缩方法相结合,如gzip或bzip。

  • 从文件创建归档:
    tar cf target.tar file1 file2 file3

  • 创建一个压缩的gzip归档文件:
    tar czf target.tar.gz file1 file2 file3

  • 在目标文件夹中提取存档:
    tar xf source.tar -C folder

  • 在当前目录中提取压缩后的归档文件(gzip):
    tar xzf source.tar.gz

  • 在当前目录中提取压缩后的归档文件(bzipped):
    tar xjf source.tar.bz2

  • 创建压缩存档,使用存档后缀来确定压缩程序:
    tar caf target.tar.xz file1 file2 file3

  • 列出tar文件的内容:
    tar tvf source.tar

  • 提取与模式匹配的文件:
    tar xf source.tar --wildcards "*.html"

which

在用户路径中定位程序
(可执行文件)

  • 搜索PATH环境变量并显示任何匹配的可执行文件的位置:
    which executable

  • 如果有多个可执行文件匹配,则显示所有文件:
    which -a executable

alias命令

创建别名——由命令字符串替换的单词。
别名在当前shell会话中过期,除非它们是在shell的配置文件中定义的,例如。~ / . bashrc。

  • 创建通用别名:
    alias word="command"

  • 查看与给定别名关联的命令:
    alias word

  • 删除别名命令:
    unalias word

  • 列出所有别名的单词:
    alias mac系统下
    alias -p linux系统下

  • 将rm转换为交互式命令:
    alias rm="rm -i"

  • 创建“la”作为“ls -a”的快捷方式:
    alias la="ls -a"

cat命令

打印和连接文件。

  • 将文件的内容打印到标准输出:
    cat file

  • 将几个文件连接到目标文件中会覆盖原来文件的内容:
    cat file1 file2 > target_file

  • 将几个文件附加到目标文件中 在原来文件内容后面追加内容:
    cat file1 file2 >> target_file

  • 给所有输出行编号:
    cat -n file

nohup 命令
当终端被终止时,允许进程继续运行。

  • 运行可以驻留在终端之外的进程:
    nohup command options

uname

打印当前机器和在其上运行的操作系统的详细信息。
注意:有关操作系统的更多信息,请尝试“sw_vers”命令

  • 打印硬件相关信息:机器和处理器:
    uname -mp

  • 打印软件相关信息:操作系统、发布号、版本:
    uname -srv

  • 打印系统的节点名(主机名):
    uname -n

  • 打印所有可用的系统信息(硬件、软件、节点名):
    uname -a

linux下读取系统版本信息
cat /etc/issue命令读取 内容

ps命令

Linux ps命令用于显示当前进程 (process) 的状态。

  • 列出所有正在运行的进程:
    ps aux

  • 列出所有正在运行的进程,包括完整的命令字符串:
    ps auxww

  • 列出所有正在运行的进程,包括完整的命令字符串:
    ps aux | grep string

  • 以额外的完整格式列出当前用户的所有进程:
    ps --user $(id -u) -F

  • 以树的形式列出当前用户的所有进程:
    ps --user $(id -u) f

  • 获取进程的父pid:
    ps -o ppid= -p pid

env 命令

显示环境或在修改的环境中运行程序。

  • 展示环境:
    env

  • 运行一个程序。通常用于脚本后的shebang(#!),用于查找程序的路径:
    env program

  • 清除环境并运行程序:
    env -i program

  • 从环境中删除变量并运行程序:
    env -u variable program

  • 设置一个变量并运行一个程序:
    env variable=value program

cp命令

复制文件和文件夹。

  • 将文件复制到另一个位置:
    cp path/to/file.ext path/to/copy.ext

  • 将文件复制到另一个文件夹中,保留文件名:
    cp path/to/file.ext path/to/target_parent_folder

  • 递归地将文件夹复制到另一个位置:
    cp -r path/to/folder path/to/copy

  • 以详细模式递归复制文件夹(在复制文件时显示文件):
    cp -vr path/to/folder path/to/copy

  • 将文件夹的内容复制到另一个文件夹:
    cp -r path/to/source_folder/* path/to/target_folder

  • 以交互模式(覆盖前提示用户)将文本文件复制到另一个位置:
    cp -i *.txt path/to/target_folder

mv命令
移动或重命名文件和目录.

  • 将文件移动到任意位置:
    mv source target

  • 覆盖现有文件前不要提示确认:
    mv -f source target

  • 覆盖现有文件前提示确认,无论文件权限如何:
    mv -i source target

  • 不覆盖目标上的现有文件:
    mv -n source target

  • 以详细模式移动文件,在移动文件后显示文件:
    mv -v source target

rm 命令

删除文件或目录.

  • 从任意位置删除文件:
    rm path/to/file path/to/another/file

  • 递归地删除目录及其所有子目录:
    rm -r path/to/folder

  • 强制删除目录,无需提示确认或显示错误消息:
    rm -rf path/to/folder

  • 交互式地删除多个文件,每次删除前都有一个提示符:
    rm -i file(s)

  • 以冗长模式删除文件,为每个删除的文件打印一条消息:
    rm -v path/to/folder/*

crontab命令

安排cron工作在当前用户的时间间隔内运行.
工作定义格式: "(min) (hour) (day_of_month) (month) (day_of_week) 命令执行".

  • 为当前用户编辑crontab文件:
    crontab -e

  • 查看当前用户的现有cron任务列表:
    crontab -l

  • 删除当前用户的所有cron任务:
    crontab -r

crontab编辑例子:

  • 每天10点运行的示例任务。*表示任何值:
    0 10 * * * path/to/script.sh

  • 示例任务,在4月3日每分钟运行一次:
    * * 3 Apr * path/to/script.sh

  • 样本任务,每周五2:30开始:
    30 2 * * Fri path/to/script.sh

tail命令

显示文件的最后一部分 默认10行.

  • 在文件中显示最后的“num”行:
    tail -n num file

  • 显示“num”行之后的所有文件:
    tail -n +num file

  • 显示文件中的最后一个“num”字节:
    tail -c num file

  • 一直读取文件,直到“Ctrl + C”:
    tail -f file

  • 一直读取文件直到“Ctrl + C”,即使文件是循环的:
    tail -F file

mkdir命令

  • 在当前文件夹或给定路径中创建目录:
    mkdir directory
  • 递归地创建目录(用于创建嵌套的dirs) 嵌套创建目录:
    mkdir -p path/to/directory

export命令

命令来标记当前环境中的shell变量,以便与任何新派生的子进程一起导出

  • 设置一个新的环境变量:
    export VARIABLE=value

  • 删除环境变量:
    export -n VARIABLE

  • 向路径变量追加一些东西:
    export PATH=$PATH:path/to/append

Passwd

是一个用来更改用户密码的工具。

  • 更改当前用户的密码:
    passwd new_password

  • 更改指定用户的密码r:
    passwd username new_password

  • 获取用户的当前状态:
    passwd -S

  • 将账户密码设为空(将指定账户设为无密码):
    passwd -d

使用telnet协议连接到主机的指定端口

  • Telnet到主机的默认端口:
    telnet host

  • Telnet到主机的特定端口:
    telnet ip_address port

  • 退出telnet会话:
    quit

  • 发出终止会话的默认转义字符组合:
    Ctrl + ]

  • 以“x”作为会话终止字符启动telnet:
    telnet -e x ip_address port

参考

相关文章

  • 记录几个linux命令

    linux命令 echo 在命令行输出一段信息,引号是可选的echo 'message' 输出带有变量的信息 ec...

  • 最近三周常用的linux命令

    2月份去了新公司,服务器是linux的,所以又开始接触linux命令了,下面记录下最近常用的几个命令和用的比较多...

  • Linux之常用文件操作命令

    前言 继Linux命令基础 后.记录整理了Linux较为常用的处理文件目录的命令. 文件处理命令 Linux 下一...

  • Linux用户相关操作

    Linux用户相关操作 这篇文章主要记录一下几个问题 登录远程Linux主机 关机重启命令 用户管理增删用户 用户...

  • Linux常用命令 1

    初学Linux,记录一下Linux常用命令。 Linux严格区分大小写。 目录处理命令: ls 命令所在路径:/b...

  • 【置顶】此文集说明_Linux折腾记录

    Linux折腾记录文集 1、前言 很久之前就去折腾了Linux,那时候只是简单的学了几个命令,就闲置了。 前几天看...

  • Linux命令之文件管理 (四十五)

    Linux mshowfat命令Linux mshowfat命令用于显示MS-DOS文件在FAT中的记录。 msh...

  • Linux命令学习

    Linux & Unix命令学习 Linux 命令记录小白学习Linux的过程,如有错误,万望指正,感激不尽。zs...

  • 记录几个查看linux性能的命令

    一、top命令 常见用法: top查看CPU负载、内存占用、buffer/cache、swap情况 top -Hp...

  • linux常用命令行

    linux系统的使用离不开linux命令行,先对常用的linux命令行做个总结记录。目前,个人比较常用的命令行有如...

网友评论

      本文标题:记录几个linux命令

      本文链接:https://www.haomeiwen.com/subject/ucvkfqtx.html