在装好ubuntu之后今天学习了一些linux的一些基础知识:

windows里面打开命令窗口是win+r,在linux系统里面,ctrl+alt+t打开终端,今天的一些指令都是围绕终端来说的

首先sudo apt install tree 这个语句的意思就是安装tree这个软件,这个程序是linux软件包里自带的,用于查看电脑的文件分布情况

然后说一些常用的命令:

cd+要打开的文件名表示打开一个文件

cat+要打开的文件名表示查看一个文件的内容

touch+文件名表示创建一个该名字的文件

/+名字表示到该名字的文件,然后  .  表示当前文件   ..就表示上一级文件,~表示home目录

ls表示列出当前目录的子文件列表

mkdir+名字表示当前创建一个该名字的文件夹

rm+名字表示删除一个文件  然后递归删除加上-r,不能复原的删除加上-f(慎用)

pwd表示返回当前目录的完整路径

$美元符号表示当前为一个一般的用户进行操作,不能修改一些root文件

如果要获得最高的权限就输入sudo su,然后你的美元符号就变成了¥表示最高级权限

退出该权限是 exit

echo比较无聊,表示你输入什么就给你输出什么

vim是linux里面一个常用的文本编辑软件,也是系统包里自带的,用sudo apt install vim可以进行安装

下面说一下如何用vim写一个c程序并运行

第一步,安装vim,上面有写

然后假如要创建一个hello的c文件用 touch hello.c创建一个.c文件

用vim打开,用法就是vim+hello.c(文件名)

然后按i就是插入写代码,然后写一个c的程序

然后按ctrl+c表示退出当前状态 (linux终端里面也表示停止)

然后按shift+冒号表示命令

输入wq表示储存并退出

然后你就获得了一个hello.c程序

然后学长说不仅要会用还要知道编译成可执行文件的全过程

1.预处理,生成预编译文件(.i文件):

        gcc –E hello.c –o hello.i

    2.编译,生成汇编代码(.s文件):

        gcc –S hello.i –o hello.s

    3.汇编,生成目标文件(.o文件):

        gcc –c hello.s –o hello.o

    4.链接,生成可执行文件:

这一整个过程可以直接用gcc -o hello hello.c就可以完成

然后如果想运行就直接输入./hello  表示运行当前目录下的hello文件

然后学长还告诉我们一些用来装逼的有趣的指令:

安装 $sudo apt-get install fortune

运行 $fortune  会得到一堆心灵鸡汤

安装  $sudo apt-get install cowsay

运行  $cowsay  -f tux "I am not a cow, hahaha" 然后一直牛就会说话

安装   $ sudo apt-get install cmatrix

运行   $cmatri 然后就会出现全屏代码流,很装逼

$yes  我很NB 这个比较好玩,屏幕会无限出现我很NB,然后这种方法有一种很危险的用法,可以用来占满磁盘内存的,学长用了几秒钟就占了6.9G内存。。。

输入 yes 话 >> text 然后就会在根目录下出现一个text文件,不断申请内存。。。ctrl+c停止,慎用 

--------------------- 

作者:i-unique 

来源:CSDN 

原文:https://blog.csdn.net/qq_37497322/article/details/78445455 

版权声明:本文为博主原创文章,转载请附上博文链接!

linux常用终端指令+如何用vim写一个c程序并运行的更多相关文章

  1. 写一个CGI程序并运行

    准备Linux和Apache我在/var/www/cgi-bin/下建一个文件get.c #include <stdio.h> #include <stdlib.h> int ...

  2. 如何用Qt写一个同一时间只能运行一个实例的应用程序

    http://blog.sina.com.cn/s/blog_6343941a0100nk2x.html 可以达到的目的: 1.应用只启动一个实例,依赖于QtNetwork模块 2.启动时向另一个实例 ...

  3. linux常用操作指令

    Linux常用操作指令: 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a          列出当前目录下所有文件及目录,包括隐藏的a(a ...

  4. linux常用系统指令

    [linux常用系统指令] 查看内核版本:cat /proc/version 查看发行版本:cat /etc/issue 通过安装lsb的方式查看发行版本: yum provides */lsb_re ...

  5. 如何用 Python 写一个简易的抽奖程序

    不知道有多少人是被这个头图骗进来的:) 事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八八可能也写的出来,但是一旦自己独立写一段程序,感觉到无从下 ...

  6. 写一个ajax程序就是如此简单

    写一个ajax程序就是如此简单 ajax介绍: 1:AJAX全称为Asynchronous JavaScript and XML(异步JavaScript和XML),指一种创建交互式网页应用的网页开发 ...

  7. [Java] 将标准字符流写入到文件中(通过控制台写一个html程序,并保存)

    package test.stream; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.Fi ...

  8. 学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装

    在这一系列的前一篇文章学了C语言,如何为下载狂人写一个磁盘剩余容量监控程序?中,我们为下载狂人写了一个程序来监视磁盘的剩余容量,防止下载的东西撑爆了硬盘.可是,这两天,他又抱怨他的下载程序不好用,让我 ...

  9. 如何用java创建一个jdbc程序

    第一个jdbc程序 JDBC简介 Java数据库连接(Java Database Connectivity,JDBC),是一种用于执行SQL语句的Java API,它由一组用Java编程语言编写的类和 ...

随机推荐

  1. mariadb增删改查

    数据库用户的操作 登录前需先启动3306端口. 首次启动需初始化数据库 mysql_secure_installation 增/改: 创建用户及赋予用户指定权限 grant 权限(分为create[创 ...

  2. scp 自动带密码参数复制文件到主机

    一.安装sshpass工具 [root@zabbix_server scripts]# yum install sshpass 二.运行 [root@zabbix_server scripts]# s ...

  3. Python核心技术与实战——十二|Python的比较与拷贝

    我们在前面已经接触到了很多Python对象比较的例子,例如这样的 a = b = a == b 或者是将一个对象进行拷贝 l1 = [,,,,] l2 = l1 l3 = list(l1) 那么现在试 ...

  4. HDU - 4358 Boring counting (树上启发式合并/线段树合并)

    题目链接 题意:统计树上每个结点中恰好出现了k次的颜色数. dsu on tree/线段树合并裸题. 启发式合并1:(748ms) #include<bits/stdc++.h> usin ...

  5. js 反斜杠 处理

    var t = jsonstr.replace(/\\/g,"\\\\\\\\"); --\\ 表示 代码 输出 \' 单引号 \" 双引号 \& 和号 \\ 反 ...

  6. 今天跟outlook顶上牛了

    之前使用的是2007,然后之前弄东西的时候给升到2010了,之前就是把所有的邮件都保存到本地的文件中,我还想使用之前的文件,然后2010就是不好使,后来查了半天发现原来是需要手动创建账户,参考http ...

  7. MySQL_约束

    MySQL中约束的作用是对表中的数据进行限定,保证数据的正确性,完整性,有效性. 分类:(1)主键约束 primary key(2)非空约束 not NULL (3)唯一约束 unique (4)外键 ...

  8. HDU1026--Ignatius and the Princess I(BFS记录路径)

    Problem Description The Princess has been abducted by the BEelzebub feng5166, our hero Ignatius has ...

  9. splice()、slice()、split()函数的区分

    1.slice(数组) 用法:array.slice(start,end) 解释:该方法是对数组进行部分截取,并返回一个数组副本:参数start是截取的开始数组索引,end参数等于你要取的最后一个字符 ...

  10. 初识REST

    RESTful介绍: REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”或“表现层状态转化”. 1 ...