linux-CentOS初学terminal命令(2)vi、gcc、g++、./、mv、cp、ifconfig
1.vi filename(vi,visual editor,可视化编辑器)用vim文本编辑器打开filename文件。
vim文本编辑器有三种模式:命令模式(Command mode),插入模式(Insert mode)和底线命令模式(Last line mode)。
命令模式:刚进入vim就是命令模式,此模式下,底线没有显示东西.在此模式下,按下i进入插入模式,输入:进入底线命令模式.
插入模式:编辑、输入的模式,在此模式下vim底线会有-- INSERT --提示,
此模式下可以向文件输入字符,按下ESC键,可以返回到命令模式.
底线命令模式:此模式下底线会有:提示,可以输入命令.
vim在保存之前不会对文件做实际的修改,只是加载到缓冲区中,对文件的编辑其实是对缓冲区的编辑.
常用的底线命令
:w (write)将缓冲区写入文件,即保存修改
:wq (write and quit)保存修改并退出
:x 保存修改并退出
(x和wq的区别:wq 强制性写入文件并退出。即使文件没有被修改也强制写入,并更新文件的修改时间。:x 写入文件并退出。仅当文件被修改时才写入,并更新文件修改时间;否则不会更新文件修改时间。)
:q (quit)退出,如果对缓冲区进行过修改,则会提示
:q! (quit!) 强制退出,放弃修改
2.gcc *.c 编译c文件,预处理、汇编、编译并链接形成可执行文件。这里未指定输出文件,默认输出为a.out。
有的时候编译不通过通过加参数 gcc -std=c99 *.c ,就可以了,意思是以c99标准编译.
3.g++ *.c 编译c++文件
有的时候编译不通过通过加参数 g++ -std=c++ *.c ,就可以了,意思是以c++11标准编译.
有的时候会出现g++:command not found,在终端输入yum install gcc gcc-c++
4. ./*.out (gcc和g++编译后会产生.out文件,通过./命令可以运行.out文件,注意例如./a.out是正确的,./与a.out之间没有空格,因为./的意思是在当前目录下)
如果想重新命名成其他名字要用参数-o ,如gcc test.c -o test.out 注意-o的位置在要命名的文件之前.
PS:linux系统中的执行文件在列表中为绿色,后缀名不一定是.out,即便是你将后缀名.out改称别的什么,这个文件还是在列表中显示为绿色,还是可执行文件。
是不是执行文件,只和它的属性里有没有x(可执行)有关。
5.mv sfile dfile(move,s表示source,d表示destination)为文件或目录改名或将文件由一个目录移入另一个目录中。
参数:
-f (force 强制的意思)如果目标文件已经存在,不会询问而直接覆盖;
-i (interactive交互模式)若目标文件 (destination) 已经存在时,就会询问是否覆盖!
(1)改名:mv sfile dfile(此时同一目录下没有名称为dfile的文件,有sfile名称的文件)将sfile1文件名称改为sfile2。
(2)覆盖文件 :mv sfile dfile(sfile和dfile都是已经存在的文件,此时命令上加上-i会提示是否覆盖)清除dfile中的原始内容,并将sfile的内容覆盖到dfile中,新的文件
名为dfile
(3)移动文件:mv sfile dfile(此时dfile表示为目录名)将sfile从原来的位置移动到目录dflie中,同时删除原来位置的dfile,
也可以移动多个文件mv sfile1 sfile2 sfile3 dfile
6.cp sfile dd(cp,copy.dd,destination directory,目标目录)将sfile拷贝到dd目录下,sfile也可为目录。
-i (interactive交互模式)若目标文件 (destination) 已经存在时,就会询问是否覆盖!
7.ifconfig(interfaces config)用来获取网络接口配置信息并对此进行修改,必须使用root身份才可以使用该命令 window中有ipconfig与linux中的ifconfig功能差不多,但是在windows中,要先cd c:\Windows\System32\才可以使用linux-CentOS初学terminal命令(2)vi、gcc、g++、./、mv、cp、ifconfig的更多相关文章
- linux初学terminal命令(1)ls、cd、su、man、pwd、useradd、passwd、cat、Ctrl+C、Ctrl+Z、Ctrl+L
terminal命令(terminal终端对应windows 按下win(linux下叫Super键)+r,输入cmd(command,命令),召唤出来的Dos控制台) 1. ls(英文list):简 ...
- linux ----> centos 网络、tomcat、vi、等等的配置和使用
网络/配置 环境: centos6.8-mini-version virtualbox 工具: FileZilla client SecureCRT 静态ip地址 每一台计算机分配有一个固定的IP地 ...
- Linux centos 常用的命令
Linux centos 下载命令:wget Linux centos 访问命令:vi Linux centos 插入命令:i Linux centos 保存退出: :wq Linux centos ...
- Linux(CentOS)用split命令分割文件
在 Linux 里,稍加不注意有可能会产生很大体积的日志文件,哪怕几百M,拖下来分析也很浪费时间,这个时候,如果可以把文件切割成 N 个小文件,拿最后一个文件就可以看到最近的日志了.有一些手段,比如用 ...
- Linux(CentOS)下SVN命令使用实例[转]
原文出处: http://blog.csdn.net/limingzhong198/article/details/22394809 前言:关于Linux(Unix)系统下的SVN命令使用的文章,在网 ...
- linux-CentOS初学terminal命令(3)rm、chmod、mkdir、who、w、id、systemctl、
PS 1:windows不允许出现字母相同,但是大小写不同的文件名,因为在windows下会将它们认作是同名. 但是linux允许出现字母相同,大小写不同的文件名. ps 2:prompt 提示 1. ...
- Linux (Centos)操作MySql命令
1.安装MySql服务端命令: yum install mysql-server yum install mysql-devel 2.安装MySql客户端 yum install mysql 3.启动 ...
- Linux CentOS 7 常用命令集合
- gcc/g++命令参数
在windows环境下,我们运行一程序,只需要在VS中点击运行按键即可,VS帮我们做完了程序的预处理.编译.汇编.链接阶段 但是在linux环境下,我们只能借助gcc/g++完成这一系列的操作 -o参 ...
随机推荐
- VsCode基本使用
迫于公司统一编辑器,初次接触VsCode,小白入门笔记 安装插件及其用途: 1. Bracket Pair Colorizer :对括号对进行着色,再也不会搞不清状况了. 2. Git History ...
- c#devexpres TreeList 最简单显示动态值的应用
为了让数据显示在行内,也为熟练一下devexpress treelist 控件, 查找了很多,最多的是先把数据放在datatable 表里边, 然后赋值给treelist的datasource 的 ...
- Informatica_(2)第一个例子
PowerCenter Repository Manager1.启动客户端程序连接服务器打开客户端(PowerCenter Repository Manager)PCRM;存储库--配置域--添加新域 ...
- poj 2886 (线段树+反素数打表) Who Gets the Most Candies?
http://poj.org/problem?id=2886 一群孩子从编号1到n按顺时针的方向围成一个圆,每个孩子手中卡片上有一个数字,首先是编号为k的孩子出去,如果他手上的数字m是正数,那么从他左 ...
- spring读取properties的几种方式
参考链接:http://www.cnblogs.com/zxf330301/p/6184139.html
- Python中的类方法、实例方法、静态方法
类方法 @classmethod 在python中使用较少,类方法传入的第一个参数是 cls,是类本身: 类方法可以通过类直接调用或者通过实例直接调用,但无论哪种调用方式,最左侧传入的参数一定是类本身 ...
- PHP使用swoole来实现实时异步任务队列
转载来自第七星尘的技术博客的<PHP使用swoole来实现实时异步任务队列> 关于异步任务队列 用户打开了我们的网站.他要做的就是勾选需要发邮件的代理商列表,然后把结算邮件发出去.假如我们 ...
- spring 的 ApplicationContext.getBean(type) 无法获取bean,报错
具体问题请看 https://q.cnblogs.com/q/108101/ 研究了两天: 经过上文中的排除法: 造成问题的原因是要获取的bean 中 有被切入的方法.. 就是可能该类会使用反射生 ...
- SQL表两列取一列唯一值的记录
问下SQL表两列取一列唯一值的 A列 B列 C列 1001 AA 2012-01-02 1001 BB 2012-02-05 100 ...
- 内存溢出和内存泄漏的区别(ZZ)
内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory:比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出 ...