我们知道,Linux是比如手机、平板电脑、路由器、台式计算机计算机设备的核心,它们都使用着Linux系统。以现在来说,一个合格的开发者必须要对Linux有一定的了解,那么,下面就跟小编一起来看看Linux是如何编译及执行的吧。

一、为什么我们要使用Linux?

1.与Windows、MacOS相比,它既实惠,又强大

2.大环境下都是服务器上安装Linux系统所以项目最终是跑在线上的Linux服务器上

这里顺带提一下操作系统的鄙视链:

MacOS>Linux>windows

3.

因为MacOS是一款界面精美,又兼备Linux强大命令行的类Unix操作系统。它和Linux一样都是基于Unix开发的,要说它唯一的缺点,就是贵。

二、Linux编译及执行命令详解

编译命令

Vi编辑器

Linux下编译需要使用到编辑器,vi既可以查看文件也可以编辑文件。

三种模式:命令行、插入、底行模式。

命令行模式在左下角没有显示或显示文件名。在命令行模式下可直接通过摁指定键执行一些操作

切换到命令行模式:按ESC键;

插入模式在左下角有"-- INSERT --"的字样,插入模式既是编辑模式,注意编辑完后如果要执行命令记得按ESC回到命令行模式

切换到插入模式:按i、o、a键

i 在当前位置前插入

I 在当前行行首插入

a 在当前位置后插入

A 在当前行行尾插入

o 在当前行之后插入一行

O 在当前行之前插入一行

底行模式的左下角会有一个:(冒号)。底行模式可通过输入指定字母敲击回车执行一些操作

切换到底行模式:按":"(冒号);

vi常用操作命令

打开文件:vi filename

退出

输入:q 未修改可直接退出

输入:w 保存

输入:wq 保存并退出

输入:q! 放弃修改强制退出

输入:e! 放弃修改重新打开原来文件

输入ZZ也可以保存并退出

删除

x 每按一次删除光标所在后面的一个字符

X 大写的x,每按一次删除光标所在前面的一个字符

dd 删除光标所在行

......

复制粘贴

yw 将光标所在处到字尾字符复制

yy 复制光标所在行

p 粘贴到光标所在处

回复上一次操作:

类似windows中的ctrl+z的操作

u

显示行号

:set nu

执行命令

切换目录命令cd

cd命令用来切换目录。cd命令可让用户在目录切换,前提是有足够权限

和windows中的切换目录命令一样都是cd,不过要注意,Linux中的cd后面都有一个空格 cd app 切换到app目录(前提是当前目录下有需要切换的目录)

cd .. 切换到上一层目录 cd / 切换到系统根目录 cd ~ 切换到用户主目录(~是home路径,对于超级管理员而言,home路径就是root目录) cd

- 切换到上一个所在目录 cd /etc/sysconfig/network-scipts 切换到指定路径下的目录

列出文件列表:ls ll dir

ls

ls(list)用来显示当前目录下的内容,配合参数的使用,能以不同的方式显示目录内容 格式:ls 【参数】 【路径或文件名】

在linux中以“.”开头的文件都是隐藏文件 常用:

ls

ls -a 显示所有文件或目录(包括隐藏文件)

ls -l 使用详细格式列表(缩写成ll)

我们通过ll查询文件列出的文件列表,我们发现前面有这么一截由共10个英文或-组成的字段,这里介绍一下这10个字母/符号的作用:

例如:lrwxrwx---

第一个符号表文件类型

"-"表示文件;"d"表示文件夹;"l"表链接文件

后面九位,每三位分为一段,一共三段,每段的三位分别为r(读取)、w(写入)、x(执行);第一段代表建立此文件的用户的权限,第二段代表建立此文件的用户的所属组的权限,第三段代表其他用户的权限,哪项为空代表则表示没有这个权限。

比如例子中的"lrwxrwx---"则表示这是个链接文件,创建此文件的用户拥有读写执行的权限,创建此文件的用户所属的组也有读写执行的权限,但其他用户没有任何权限。

解读一下ll显示的结果列表分别是什么意思

比如:-rwxr--r--. 1 root root 422 Nov 28 10:40 TestText

第一个栏位(-rwxr--r--)就是文件类型及权限

第二个栏位(1)是所含文件个数,如果是文件就肯定是1,如果是文件夹就显示此文件夹包含几个文件(这里注意,一般目录默认就是2,因为包括一个代表当前目录的.和表示上级目录的..这两个会占据两个文件数)

第三个栏位(root【第一个】)表示该文件或目录的拥有者

第四个栏位(root【第二个】)表示所属的组(group)

第五个栏位(422)表示文件或文件夹大小,byte(字节)为单位

第六个栏位(Nov 28 10:40)表示最后一次修改时间。按照月份、日期、时间的顺序

第七个栏位(TestText)就是文件/文件夹名了

(dir和ls列出列表比较相近,常用的还是ls)

创建目录和移除目录命令:mkdir rmdirmkdir

mkdir(make directory)命令可用来在当前目录下创建子目录或指定目录下创建目录,并设置权限。

mkdir test 在当前路径下新建名字为test的文件夹

mkdir /home/test 在/home目录下新建目录test

mkdir -p ParentTest/SonTest 级联创建ParentTest目录和SonTest目录

mkdir -m 777 allTest

在当前路径下新建名为allTest的目录,并设置权限为创建者可读写执行,创建者所属组可读写执行,其他用户可读写执行。

关于mkdir -m设置权限

前面提到,在使用ll查询文件列表的时候提到了Linux在权限上分为ugo(user创建者,group创建者所属组,other其他用户)三种角色,每个角色又分为rwx(read读取write写入eXecute执行)三种权限。因为计算机只识别二进制数据,所以把一个角色的权限用0或1来表示,如000,110,再转换成10进制表示,111(读写执行均有权限),再转成10进制表示,111=7,然后三种用户的权限排列起来,如700,775等。所以使用mkdir命令要创建目录并同时设置权限的话,则在-m后面接由三个十进制的数字组成的数字来表示相对应角色权限分配。

十进制的数字表示:7 = rwx =可读,可写,可执行

6 = rw- =可读,可写,不可执行

5 = r-x =可读,不可写,可执行

4 = r-- =可读,不可写,不可执行

3 = -wx =不可读,可写,可执行(极其诡异)

2 = -w- =不可读,可写,不可执行

1 = --x =不可读,不可写,可执行

0 = --- =不可读,不可写,不可执行

这里常用的是1 、2 、4 、5 、7

例如:700 权限分配就是:创建者拥有读写执行的权限,与创建者同组的其他用户以及与创建者不同组的其他用户均没有权限,也就是这个目录为创建者独享

一般常用的是755和775

rmdirrmdir(remove directory)命令用来删除空的子目录

rmdir test 删除test目录(前提必须rmdir为空)

rmdir -p test/test1 若删除test1目录后上级目录test也为空则连同上级目录一起删除

浏览文件命令cat more less

cat

用于显示文件的内容。

格式:cat 【参数】 cat TestText

cat -n TestText 由1开始对所有输出行标号

cat -b TestText 与-n作用类似,不过对空白行不编号

它会把文件内容一次性全部展示出来,如果文件内容超过一个画面长度则需要使用Linux中翻页快捷键shift+PageUp和shift+PageDown来进行翻页

more

一般用于上述所说的,显示内容会超过一个画面长度的情况。按空格键显示下一个画面。回车显示下一行内容。

按q键退出查看。more TestText

*空格显示下一页数据 回车显示下一行的数据

less

用法和more类似,q键退出查看。空格显示下一页数据。回车显示下一行

不同的是,less可以通过方向键↑、↓键或者PgUp、PgDn键来控制。

*tail

tail命令是在实际使用过程中使用非常多的一个命令,它的功能是:用户显示文件后几行的内容。

用法:tail -10 /etc/passwd 查看后10行数据

tail -f catalina.log *动态查看日志

这里-f这个参数很重要,tail看上去只是显示文件的后几行内容,但如果加上-f这个参数之后,它能够动态显示日志文件。我们学习Linux最终是让我们能够在Linux端部署tomcat,然后发布项目到tomcat上,而在tomcat启动的日志信息是会刷新的,所以这个tail

-f的操作很重要很有用,能够及时根据tomcat启动动态加载日志信息。而省去了使用其他浏览命令逐次逐次执行刷新的繁琐

此时要想暂停刷新,使用ctrl+s暂停终端。 若想继续终端,使用ctrl+q。 若想退出tail命令,直接使用ctrl+c。

以上就是今天的所有内容了,想了解更多java常见问答知识,就来关注我们的网站吧。

推荐阅读:

如何对linux文件进行编译,linux编译和执行命令都有哪些?该如何实现?相关推荐

  1. 文件上传linux服务器,Linux 文件上传Linux服务器

    进入命令行 在图形化桌面出现之前,与Unix系统进行交互的唯一方式就是借助由shell所提供的文本命令行界面(command line interface,CLI).CLI只能接受文本输入,也只能显示 ...

  2. linux文件权限754,Linux文件权限

    Linux文件权限 在Linux中,对系统服务的文件通常只有root才能读写或执行. 说明:Linux记录用户身份的是UID(用户ID)和GID(群组ID),root的两个ID号均为0,一般用户的两个 ...

  3. linux 文件操作函数,Linux下的文件操作函数及creat用法

    编写Linux应用程序要用到如下工具: (1)编译器:GCC GCC是Linux平台下最重要的开发工具,它是GNU的C和C++编译器,其基本用法为:gcc [options] [filenames]. ...

  4. linux文件系统启动流程,linux 内核启动过程以及挂载android 根文件系统的过程

    转载 作者:汕头大学-黄珠唐 时间:2009 年10 月29 日 主要介绍linux 内核启动过程以及挂载android 根文件系统的过程,以及介绍android 源代码中文件系统部分的浅析. 主要源 ...

  5. linux 文件读取 监控,linux 文件系统的监控

    完整性检查是HIDS的重要组成部分之一,linux下做完整性检查的思路有3个 1.哈希对比 2.签名校验 3.inotify 方法有2个: A.定期检测,例如通过cron或程序内置计时器 B.实时检测 ...

  6. linux文件操作管理,linux 文件管理操作入门

    mkdir -p /root/kali/bp/shell  一路创建文件夹直到生成文件夹shell,中间没有kali文件夹的话也会自动创建生成 tar解压缩 范例一:将整个 /etc 目录下的文件全部 ...

  7. linux 文件 复制 工具栏,Linux(Ubuntu)光盘镜像文件制作及使用攻略

    一.linux 下命令行制作光盘镜像文件 1. 使用cp命令 cp 命令用来复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到该 ...

  8. linux 文件权限标识,linux文件权限学习 包括 特殊权限

    1.Linux使用9个权限位来标识 chmod:更改文件权限 chgrp:修改文件所属组 chown:修改文件拥有者 2.目录的读.写和执行权限含义 对于文件的读写执行的含义,都比较了解,对于目录的权 ...

  9. linux 文件操作 编程,Linux系统编程------------文件操作(基础)

    一.文件操作 1.1 Linux文件系统结构 1.1.1  Linux常见系统目录 /bin  :  存放普通系统可执行的命令(ls wc等) /sbin  :  存放系统管理程序(fsck等) /b ...

最新文章

  1. 安卓4安装Linux,如何在 Android 手机上安装 Ubuntu 13.04
  2. docker中使用systemctl启动服务
  3. Anaconda安装与环境配置
  4. java综合图形界面程序设计_java综合图形界面程序设计.doc
  5. tornado框架基础11-tornado异步
  6. 1660用哪个驱动稳定_PDF转word怎么转?哪个PDF转换器最好用?-PDF ——快科技(驱动之家旗下媒体)-...
  7. SBO错误提示总帐科目缺失解决方法
  8. ffmpeg sws_scale函数详解
  9. 基于visual Studio2013解决C语言竞赛题之0204实数求值
  10. 搭建MIPS平台GDB调试环境
  11. 【入门指南】使用阿里云Elasticsearch搭建ELK日志系统
  12. 计算机excel数据标签,excel散点图数据标签,Excel如何设置散点图标签
  13. 一款优秀的IT资产管理系统-Snipe-IT 安装及用户手册中文版(二配置使用篇)
  14. 狐妖小红娘手游服务器维护,狐妖小红娘手游:游戏界面详细解析,狐妖小粉丝不要错过哦...
  15. python PTA合集
  16. 【BC260Y】 AT指令接入移动oneNet平台流程
  17. SAP全球副总裁、中国区总经理李强,离职去向大家就不要猜了
  18. 【介绍+代码实现】使用GradualWarmupScheduler进行学习率预热
  19. 什么是响应式布局?原理是什么?
  20. C++/OpenCV实现图像目标识别与分类

热门文章

  1. 如何判断SVG事件对象中的鼠标来源?
  2. 荣新linux培训,51CTO博客-专业IT技术博客创作平台-技术成就梦想
  3. 《计算机应用基础》18春作业,【北语网院】18春《计算机应用基础》作业_2.pdf...
  4. 【STC15库函数上手笔记】1、建立工程
  5. 【51单片机快速入门指南】4.5:I2C 与 TCA6416实现双向 IO 扩展
  6. MySQL 字符串分割 SUBSTRING_INDEX函数
  7. “Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported“解决方法
  8. vuex的使用和封装
  9. Taro+react开发(78):taro生命周期render
  10. 小程序学习(1):微信开发者工具安装