# ctrl + l - 清屏 。 cLear
# ctrl + c - 终止命令。 
# ctrl + d - 退出 shell,好像也可以表示EOF。 
# ctrl + z - 将当前进程置于后台,fg还原。 
# ctrl + r - 从命令历史中找 。 Reverse-i-search
# ctrl + a - 光标移到行首 。 A
# ctrl + e - 光标移到行尾。 End
# ctrl + u - 清除光标到行首的字符 。U
# ctrl + w - 清除光标之前一个单词 。Word
# ctrl + k - 清除光标到行尾的字符。K
# ctrl + t - 交换光标前两个字符。swiTch
# ctrl + y - 粘贴前一ctrl+u类命令删除的字符。Y
# ctrl + p - 上一条命令。Prev
# ctrl + n - 下一条命令。Next
# ctrl + v - 输入控制字符 如ctrl+v <ENTER>,会输入^M

# ctrl + f - 光标后移一个字符。Fore

# ctrl + b - 光标前移一个字符。Back
# ctrl + h - 删除光标前一个字符。H
# N+<ESC>+f - 光标后移N个单词,N为1时可省略
# N+<ESC>+b - 光标前移N个单词,N为1时可省略 
# ctrl + s - 挂起当前shell。Stop
# ctrl + q - 重新启用
# <ESC>+d 从光标开始处删除到行尾。Delete
# !! - 上一条命令 
# !-n - 倒数第N条历史命令 
# !-n:p - 打印上一条命令(不执行) 
# !?string?- 最新一条含有“string”的命令

# !-n:gs/str1/str2/ - 将倒数第N条命令的str1替换为str2,并执行(若不加g,则仅替换第一个)

使用vi编辑器(可用来编写程序,文本等),还有一个叫vim编译器,是vi的升级版。

vi有三种模式:命令行模式、插入模式、底行模式。但也有的命令行模式和底行模式归到一起,即分成两种模式,一种是命令行模式,一种是插入模式。

1)在终端中输入 vi fileName.suffixName(如 vi first.c或vi second.cpp)回车确定,相当于新建了一个记事本文件但还没保存。(注意这时是命令行模式,是无法输入字符的)

2)按i进入插入模式(要进入插入模式才能输入字符)然后输入程序。

3)按esc退出插入模式(进入命令行模式,用于复制、粘贴、删除字符等操作)

4)在命令行模式下输入冒号“:”可退出命令行模式进入底行模式(光标位于屏幕的底行,用户可以进行文件保存或退出等操作)。

5)在底行模式下按w保存,q退出,q!强制退出不保存,x退出并保存,一般可直接输入wq,回车,这样就保存并退出。

6)接着用ls(即list,也可用dir)命令查看当前文件夹文件,用ls –l查看文件的详细信息。

7)用gcc编译器编译刚才保存的C文件。

方法:①gcc fileName.c(或gcc fileName.cpp)这样编译成的文件后默认命名为a.out

②gcc fileName.c –o fileName.out,这样编译后的.out文件的名字就不会默认命名为a.out而是file_name.out了。

8)如果要编辑已存在的文件,比如之前写的C程序有错误要修改,可在终端上输入

vi fileName.c(或vi fileName.cpp),即可进入编辑。

9)修改文件名:mv oldName newName(注意要在终端界面,而不要在vi的命令界面)

10)运行fileName.out文件直接用“./fileName.out”,即用gcc编译器把“.c”文件编译成“.out”后,执行“.out”文件时,直接在文件名前加上“./”即可。

注:GCC(GNU Compiler Collection)

vi的删除与修改文件的命令(注意是在编辑模式下而不是插入模式下):

x:删除光标所在字符。

dd :删除光标所在的列。

r :修改光标所在字元,r後接著要修正的字符。

R:进入取替换状态,新增文字会覆盖原先文字,直到按 [ESC]回到指令模式下为止。

s:删除光标所在字元,并进入输入模式。

S:删除光标所在的列,并进入输入模式。

 

Linux下查看用户组的信息

groups  查看当前登录用户的组内信息

groups user_name  查看user_name用户所在的组,以及组内成员

whoami  查看当前登录用户名

who  显示目录登入系统的用户信息

whois user_name 查找并显示用户信息

w  显示目前登入系统的用户信息

finger  查询用户的信息

ubuntu常用终端命令的更多相关文章

  1. Linux Ubuntu常用终端命令

    查看cpu温度: 安装命令如下:sudo apt-get install acpi 然后acpi -t 即可 输入法配置窗口命令: fcitx-config-gtk3 im-config 任务管理器命 ...

  2. 非常实用的Ubuntu常用终端命令

    先介绍关于文件和目录的命令: ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件) ls -l 列出当前目录下文件的详细信息 cd .. 回当前目录的上一级目录 cd ...

  3. CocoaPods常用终端命令及Profile文件简单介绍

    Pod常用终端命令 pod init 创建pod文件 pod install 开始安装第三方框架,如果网上有更新,会安装最新的 pod install --verbose--no-repo-updat ...

  4. Ubuntu常用shell命令

    目录 ls cd mkdir mv cp scp rm df du chmod chown chgrp head tail screen apt-get Ubuntu常用shell命令 Ubuntu作 ...

  5. Ubuntu下终端命令安装sublime

    Ubuntu下终端命令安装sublime出现软件包无法定位 sublime-text-install 且多次换源不成功 建议采用离线安装 安装教程如下 用Ubuntu上的浏览器下载一个 Sublime ...

  6. mac 终端 常用命令,MacOS 常用终端命令大全,mac 在当前目录打开终端

    MacOS 常用终端命令大全:目录操作dircmp——比较两个目录的内容——dircmp dir1 dir2文件操作pg分页格式化显示文件内容——pg filenameod——显示非文本文件的内容—— ...

  7. flutter之VSCode下Flutter常用终端命令行

    https://www.cnblogs.com/lxlx1798/p/11049922.html 梁飞宇 [Flutter学习]之VSCode下Flutter常用终端命令行 Flutter 常用命令行 ...

  8. linux常用终端命令

    01. 终端命令格式 command [-options] [parameter] 说明: command:命令名,相应功能的英文单词或单词的缩写 [-options]:选项,可用来对命令进行控制,也 ...

  9. linux常用终端命令(一)终端命令格式(二)文件和目录常用命令

    一.linux终端命令格式 1.终端命令格式 command  [-options]  [parameter] 说明: command :命令名,相应功能的英文单词或单词的缩写 [-options] ...

随机推荐

  1. ARC下,不显式指定任何属性关键字时,默认的关键字都有哪些

    1.对应基本数据类型默认关键字是 atomic,readwrite,assign 2.对于普通的 Objective-C 对象 atomic,readwrite,strong

  2. split array

    public boolean splitArray(int[] nums) { return dividSameSumGroup(0,nums, 0,0); } public boolean divi ...

  3. Scrapy使用示例

    很多网站都提供了浏览者本地的天气信息,这些信息是如何获取到的呢,方法有很多种,大多是利用某些网站提供的天气api获取的,也有利用爬虫采集的.本文就介绍如何用Scrapy来采集天气信息(从新浪天气频道采 ...

  4. Python 3基础教程15-读文件内容

    前面两篇关于写文件和更新文件内容,我们最后都是手动去打开检查是否更新了.现在我们这里通过函数读取之前文件内容,打印到屏幕终端. 运行结果:

  5. OZ customize windows iamge

    1.之前通过修改auto文件和windows.py文件可实现自动安装OS,但是disk bus只能以IDE模式启动,进入系统自动下载运行bat文件,安装cloudbase-init和qga,及清理日志 ...

  6. 第一章 C++编程基础

    第一章 C++编程基础 1.1 如何撰写C++程序 赋值 assignment复合赋值 (compound assignment) += 函数(function)是一块独立的程序代码序列(code s ...

  7. bpf 指令集

    58 struct bpf_insn { 59 __u8 code; /* opcode */ 60 __u8 dst_reg:4; /* dest register */ 61 __u8 src_r ...

  8. 啥叫sched-domain

    这周问过公司里专家,说cpu-load是说CPU的计算能力,但是从代码实在不知道cpu-load说的是啥! SD_SHARE_CPUPOWER 0X8000  domain的成员共享cpu power ...

  9. Hadoop中maptask数量的决定因素

    刚开始接触hadoop平台的时候 部分初学者对于mapreduce中的maptask的数量是怎么确定的 可能有点迷惑,如果看了jobclient里面的maptask初始化的那段源码,那么就比较清楚了, ...

  10. PHP:在class中定义常量注意事项

    一.不能在成员函数中定义常量,否则会引发诡异地语法错误 syntax error, unexpected 'CONST' (T_CONST) 示例 /* 错误的方式 */ class A { publ ...