Linux第一周学习心得

                       LINUX入门学习心得

Shell基本命令

### shell可执行命令分类 ###

    内部命令:由shell自带得,而且通过某命令形式提供
    help 内部命令列表
    enble cmd 启用内部命令
    enable -n cmd 禁用内部命令
    enable -n 查看禁用的内部命令

    外部命令:在文件系统路径下有对应的可执行程序文件
    查看路径:which -a |--skip-alias ; whereis

### 区别指定的命令是内部命令或外部命令 ###

    type command    

### 命令别名 ###

    显示当前shell进程所有可用的命令别名: alias
    定义命令ls -a别名为ls: alias ls -a=ls

    ps:在命令行中定义的别名,仅对当前shell进程有效,如果想永久有效,要定义在配置文件中:
        ~/.bashrc :仅对当前用户有效
        ~/etc/bashrc :对所有用户有效

    撤销别名:unalias name
    撤销所有别名:alias -a
    执行原命令,不执行别名:"\command"、"command"、"/path/command"

### echo命令 ###

    功能:显示字符
    语法:echo [选项][字符串]
    选项:
        -E:(默认)不支持\解释功能
        -n:不自动换行
        -e:启用\字符的解释功能
            其中启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出
            \a 发出警告声
            \b 退格键
            \c 最后不加上换行符号
            \n  换行且光标移至行首
            \r 回车,即光标移至行首,但是不换行
            \t 插入tab
            \\  插入\字符



### tab作用 ###

    命令补全:用户给定的字符串只有唯一对应的命令,直接补全,否则,再次tab回给出列表
    路径补全:把用户给出的字符串当做路径的开头,并在其指定的上级目录下搜索以指定的字符串开头的文件名。如果唯一则直接补全,否则再次tab给出列表
    其他基本功能:
        command 2tab:所有命令或文件补全
        string2tab:以string开头的命令
        /2tab:显示所有根目录下一级目录,包括隐藏目录
        ./2tab:当前目录下子目录,包括隐藏目录
        ×2tab:当前目录下子目录,不包括隐藏目录
        ~2tab:所有用户列表
        $2tab:所有变量
        @2tab:/etc/hasts记录
        =2tab:相当于ls -A

### cal显示日历 ###

    cal yyyy 显示指定年的日历
    cal -y 显示当年的日历
    cal -3 显示上个月当月下个月的日历
    cal -1 同cal 显示当月日历
    cal mm yyyy 显示指定年,月的日历

### 关机、重启命令 ###

        poweroff
        reboot 重启
        reboot -f 直接断电源再重启。
        shutdown 
        shutdown -r 重启
        shutdown -h 关机
        shutdown +0 直接关机
        shutdown +xx xx分钟后关机
        shutdown hh:mm  指定时间关机
        shutdown -c 取消关机(在另一个终端执行)

### $的用法 ###

    $变量名 引用变量的值 
    $()或``  引用命令执行的结果
    $[]运算
    ${变量名} 或"$变量名" 当变量名的起止不分明时,用来划定变量名的范围,同时引用变量

### history命令 ###

    history [-c] [-d offset] [n]
    history -anrw [filename]
    history -ps arg [arg...]
    -c: 清空命令历史
    -d  offset: 删除历史中指定的第offset个命令
    n: 显示最近的n条历史
    -a: 追加本次会话新执行的命令历史列表至历史文件
    -n: 读历史文件中未读过的行到历史列表
    -r: 读历史文件附加到历史列表
    -w: 保存历史列表到指定的历史文件
    -p: 展开历史参数成多行,但不存在历史列表中
    -s: 展开历史参数成一行,附加在历史列表后

    history显示当前终端的历史记录
    !! 重复执行上一条命令
    !-n 重复执行倒数第n条命令
    !n 重复执行第n条命令
    ctrl+p 等于向上方向键,翻出上一条命令。
    ctrl+n 等于向下方向键,翻出下一条命令。
    ctrl+j 等于enter 执行当前命令
    !:0 执行前一条命令(去除参数)
    !string 重复前一个以“string”开头的命令
    !?string 重复前一个包含string的命令
    !string:p 仅打印以string开头的命令历史,而不执行
    !$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
    !*:p 打印输出 !*(上一条命令的所有参数)的内容
    ^string 删除上一条命令中的第一个string
    ^string1^string2 将上一条命令中的第一个string1替换为string2
    !:gs/string1/string2 将上一条命令中所有的string1都替换为string2
    ctrl-r来在命令历史中搜索命令
        (reverse-i-search)`’:
    Ctrl+g:从历史搜索模式退出

    command !^ : 利用上一个命令的第一个参数做cmd的参数
    command !$ : 利用上一个命令的最后一个参数做cmd的参数
    command !* : 利用上一个命令的全部参数做cmd的参数
    command !:n : 利用上一个命令的第n个参数做cmd的参数
    command !n:^ 调用第n条命令的第一个参数
    command !n:$ 调用第n条命令的最后一个参数
    command !n:m 调用第n条命令的第m个参数
    command !n:* 调用第n条命令的所有参数
    command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
    command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
    command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
    command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数

### bash快捷键 ###

    Ctrl+L 清屏
    Ctrl+O 执行当前命令,并重新显示本命令
    Ctrl+s 锁定,但仍可以运行命令。
    Ctrl+q 解锁
    Ctrl+C 强制结束
    Ctrl+D 正常终止
    Ctrl+Z 挂起(暂停)命令
    Ctrl + a 光标移到命令行首,相当于Home
    Ctrl + e 光标移到命令行尾,相当于End 
    Ctrl + f 光标向右移动一个字符
    Ctrl + b 光标向左移动一个字符 
    Alt + f 向右移动一个单词
    Alt + b 向左移动一个单词
    Ctrl + xx 光标在命令行首和光标之间移动
    Ctrl + u 删除光标之前的内容
    Ctrl + k 删除光标这后的内容
    Alt + r 清除全部内容
    Ctrl + w 从光标处向左删除至单词首 
    Alt + d 从光标处向右删除至单词尾
    Ctrl + d 删除光标后的一个字符
    Ctrl + h 删除光标前的一个字符
    Ctrl + y 将删除的字符粘贴至光标后
    Alt + c 从光标处开始向右更改为首字母大写的单词
    Alt + u 从光标处开始,将右边一个单词更改为大写 
    Alt + l 从光标处开始,将右边一个单词更改为小写 
    Ctrl + t 交换光标处和之前的字符位置
    Alt + t 交换光标处和之前的单词位置
    Alt + N 提示输入指定字符后,重复显示该字符N次(N表示具体的数字)
    Ctrl-Shift-n 创建新窗口 
    Ctrl-Shift-q 关闭当前窗口
    Ctrl-Shift-t 创建一个标签页
    Ctrl-Shift-w 关闭一个标签页
    Ctrl-PaUp/PgUn 切换到下一个/前一个标签页
    Ctrl-Shift-c 复制选中的文本
    Ctrl-Shift-v 把文本粘帖到当前光标处

### ls基本用法 ###

    ls -a 显示所有文件
    ls -A 显示所有文件,除.、..
    ls -l 长列出
        -rw-r--r--. 1 root root 2193 Jul 14 17:28 passwd
        文件类型|owner权限group权限other权限|硬链接数|    owner|group|文件大小    (bytes)|mtime|文件名
    ls -R 递归
    ls -ld 显示指定目录的详细信息。
    ls -1 竖显示
    ls -S 按文件大小降序排列
    ls -t 按修改时间(mtime)从新到旧排列
    ls -ut 按访问时间(atime) 从新到旧排列
    ls -U 按文件存放的先后顺序
    ls -X 按文件后缀排序
    ls -i 显示文件的inode号
    ls -Z 显示文件的context值

### 总结 ###

    这些都是一些基本的命令和知识,是学linux入门必备知识,希望能反复实践练习,才能在以后的学习中打好牢固基础。你想成为幸福的人吗?但愿你,首先学会勤奋。你想拥有勤奋吗?但愿你,请别浪费时间。因为,时间是幸福的链条,一生为你滚出无限的幸福。世界上最宝贵的除了良好的心里素质,还有一个东西,就是勤奋。最宝贵的勤奋,不光是身体上的勤奋,而是精神上的勤奋,共勉。

原创文章,作者:惟愿此心无怨尤,如若转载,请注明出处:http://www.178linux.com/80864

(0)
惟愿此心无怨尤惟愿此心无怨尤
上一篇 2017-07-15
下一篇 2017-07-15

相关推荐

  • 安装CentOS 6.9

    安装完VMvare,VMware可以运行虚拟机,虚拟机就相当于一台电脑,然后我们在这台电脑上安装Linux系统,我们这次介绍安装CentOS 6.9的过程 1.打开VMware,依照下图步骤安装     首先我们需要创建新的虚拟机,然后配置出适合自己物理机的虚拟机 2.点击典型类型安装     这里推荐使用典…

    2017-07-12
  • rpm&yum

    软件包管理 软件运行环境 软件包基础 Rpm包管理 Yum管理 定制yum仓库 编译安装 ABI 应用程序的二进制接口,和操作系统相关,一个程序二进制编好了,想要在你的系统上跑,要符合你的操作系统的接口标准Windows:PE  linux:ELF WINDOWS和LINUX二进制程序是不兼容的 库级别的虚拟化 Linux:WINE 可以让Windows程序…

    Linux干货 2018-01-02
  • ​HA专题: Corosync+Pacemaker+drbd实现MySQL高可用

    HA专题: Corosync+Pacemaker+drbd实现MySQL高可用 前言 实验拓扑 实验环境 实验步骤 安装前准备工作 配置DRBD 配置MySQL 配置Corosync+Pacemaker 测试 我遇到的问题 总结 前言 上篇文章我们介绍了drbd的相关原理、编译安装、简单的实现. drbd虽然可以保证数据的可靠性但是我们上次的实现还…

    Linux干货 2016-04-13
  • Linux用户、组管理和正则表达式的基础命令

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何权限 [root@localhost skel]# cp -r /etc/skel /home/tuser1 [root@localhost skel]# ls -al /home/tuser1 total 12 drwxr-xr-x.…

    Linux干货 2017-07-20
  • Linux之磁盘管理

    Linux之磁盘管理       linux系统中, 一切都是文件, 而这些文件都是存储在磁盘中, 因此对于磁盘的管理是非常重要的, Linux磁盘管理的好坏, 直接关系到整个系统的性能问题, 本文主要介绍了磁盘结构, 分区类型, 管理分区, 管理文件系统, 挂载设备, 管理虚拟内存这几大项的内容.    &…

    Linux干货 2016-08-29
  • VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证]

    VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证] VSFTPD+PAM+[基于文件虚拟用户认证 | 基于MYSQL虚拟用户认证] 一、实验环境 二、实验步骤 1、通过mysql数据库方式虚拟用户认证 1.1数据库配置 1.2FTP配置 1.3测试 2、通过文件方式进行虚拟用户认证 一、实验环境 CentOS 6.7+vsftpd…

    Linux干货 2016-04-18