龙空技术网

Linux的功能有多恐怖(强大)?

Java架构师圈子 957

前言:

目前朋友们对“算法导论154”都比较注重,看官们都想要了解一些“算法导论154”的相关知识。那么小编在网络上网罗了一些关于“算法导论154””的相关内容,希望小伙伴们能喜欢,我们一起来学习一下吧!

说起优秀程序员的必备技能,我想大家都可以说很多,比如:数据结构、算法、数学、编程语言等等。

其实,每一个程序员都应该掌握的技能就是:Linux。

如果你不会Linxu,那么你几乎100%会遇到以下的问题:

1、好不容易学会了Linux的安装,但是使用起来发现指令繁多、参数复杂,查资料又发现答案却五花八门

2、面试开发,编程语言熟练掌握,却因为不会Linux的一个操作指令而被拒

3、到了新公司,别的开发都用Linux,只有自己在用Windows,协同起来非常麻烦

4、想用Linux解决问题,直接网上复制粘贴命令,但因对参数不了解,结果并不能用

总的来说就是:不会Linux,根本做不好程序员

如果你掌握了Linxu这项工具,可想而知,你在面试、工作中将会有多吃香!

Linux的用途

linux主要应用于网络服务器(各种各样的网络服务解决方案),科学运算(各种各样的科研项目解决方案)、软件开发平台,嵌入式系统(日常生活中各种各样的智能电器)。

相对于windows操作系统,Linux显得难学很多。

在很多时候我们的网站都是部署在Linux服务器上的,也就是说我们日常生活中大部分网络服务,都是跑在Linux系统上,像大家耳熟的抖音,微信等他们要正常的工作都需要依靠Linux作为服务器。也就是说你日常生活中所有的网络服务,其实都是基于Linux系统的,学好了Linux,你就可以通过管理服务器或者破坏服务器,拥有干豫生活,影响地球运转的能力,这样想想都兴奋!

常见的Linux指令history显示历史命令,可使用!命令序号再次执行ctrl+a/e让光标移动到首尾部pwd查看当前目录ls列出当前目录文件-l除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出-r将文件以相反次序显示-t将文件依建立时间之先后次序列出-a显示所有文件及目录,开头为"."的视为隐藏档5.vim编辑器的使用vim test编辑名为test的文档,如果不存在则创建a/i进入插入模式开始编辑ESC键返回到命令行模式在命令模式下::q/:q!不保存退出/强制退出:wq保存并退出:set nu显示行号 set nonu不显示行号gg回到首行G跳到尾行dd删除光标所在行yy复制光标所在行 p粘贴在下一行,4yy向下复制四行wc即word count命令,可以查阅脚本的行数字节数等信息,可以使用wc --help查看具体命令6.文件管理命令cat test1 test2 > test3将文件拼接到另一个文件中cat -n test3带行号打印显示touch新建文件touch newFile 更改文件编辑时间为当前touch test3chmod更改文件操作权限,可以使用ll命令查看当前目录下的个文件权限,依次是文件拥有者、群组、其他,权限级别分为w可写、r可读、x可执行,可分别用数字4 2 1代表,例如chmod 777 test3chown更改文件拥有者,文件拥有者分为用户和组注:在root用户权限下才可执行上述两条命令 su rootfind查找命令,find -name '*.txt'查找txt文件,通常可以配合管道命令查询more类似cat,但一页一页展示,使用ctrl+f向下翻页less类似more,但是可以向上翻页ctrl+bhead -n 5 test3查看test3文件的前5行,tail -n 5 test3查看后五行mv重命名文件mv test1 test4 移动文件或目录mv test4 /opt即剪切功能cp复制文件或目录,参数-r表示递归复制mkdir创建目录 mkdir -p a/b/c递归创建目录a/b/ctar解压缩文件-f<备份文件>或–file=<备份文件> 指定备份文件-v或–verbose 显示指令执行过程-x或–extract或–get 从备份文件中还原文件-z或–gzip或–ungzip 通过gzip指令处理备份文件-C<目的目录>或–directory=<目的目录> 切换到指定的目录一般我们使用tar -zxvf XXXX -C /usr/即可7.磁盘管理df -h磁盘使用情况mount挂载Linux系统外的文件 ,umount卸除文件系统,一般系统外文件挂载在/mnt下8.用户管理useradd建立用户账号-m自动建立用户的登录目录-g指定用户所属的群组-d指定用户登入时的家目录-u 600 在0——499之间表示系统用户,500——232之间表示普通用户passwd更改使用者的密码kill杀死执行中的程序或工作,使用kill -l查看所有进程,kill -9 pid强制杀死此pid的进程9.ssh操作

为后面的集群搭建做准备,需要掌握虚拟机之间通过ssh登录的方法,准备两台虚拟机操作系统。

使用ifconfig命令查看IP地址使用ping命令查看是否连通使用ssh root@IP登录,root为登录时的用户名,由于没有使用免密操作需要输入密码,可以使用exit退出

免密操作

打开ssh功能 systemctl start sshd.service,一般默认是打开的启动root用户su root使用命令ssh-keygen -t rsa,一路回车,会创建公钥和私钥文件将私钥文件拷给另一个虚拟机即可:ssh-copy-id -i ~/.ssh/id_rsa.pub 目标IP现在可以直接使用ssh 'IP'登录另一台虚拟机

注:由于我们刚才切换到root用户进行操作,所以免密登录对root用户有效,同理可切换到其他用户创建密钥链接。

10.scp远程拷贝

scp命令用于Linux之间复制文件和目录。

使用scp -r 本地路径 目标路径即可,例如:scp -r test3 '192.168.154.11':/tmp,-r表示递归。

为什么Linux在企业计算,大数据和科学中是与众不同的。主要原因如下:

Linux是免费的。

你不需要为使用Linux而付费,你可以自由查看,编辑和分发源代码。当你购买装有Windows或macOS的计算机时,这些操作系统的费用其实已包含在价格中。

Linux是灵活的。

Linux被用于许多不同类型的计算机中,包括智能烤面包机和冰箱,其他物联网设备,互联网路由器,Android智能手机等,简直不胜枚举。

Linux操作系统被设计为既可以简单地完成一项工作又能使用功能更完善的工具来完成工作。

你可以组装一个适用于你的设备并针对你的需求进行过优化的Linux版本。

Unix哲学

Linux是一个“类Unix”操作系统,这意味着它的大部分功能派生自Unix操作系统,并且通常遵循Unix的设计原则。理想的Unix程序是简单,模块化和可扩展的。

Unix程序确实能很好地完成一些任务,并且被设计为可以与其他程序很好地协同工作,而不必依赖太多其他程序。

该系统通过利用程序的协作而变得强大,而不是因为程序本身超级强大。

于Linux的一切都是文件。

你在终端中运行的命令和程序被抽象成文件。用来快速打开自己喜欢的应用程序的桌面图标也被抽象成文件。系统检查应用程序更新的代码库如何处理?当然也是写在文件里。所有可能导致混乱的都可以用文件解决。

Linux就是这么透明、富有动力和优雅。你可以想象一下,你可以随心设置自己的Linux安装程序,同时拥有对系统的完全控制权,只要你想要的,完全甩掉你不想要的,这非常酷炫!

这些原则如实地说明了Linux的灵活性。怪不得它被用于许多应用中。

学习Python,提供全套学习资料:加Q裙即可免费领取:602697820

那我们如何来学习Linux呢?这里给大家整理出来了一些推荐的书籍:

Linux基础

《Linux与Unix Shell 编程指南》

C语言基础

《C Primer Plus,5th Edition》【美】Stephen Prata著《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)《嵌入式Linux应用程序开发详解》

Linux内核

《深入理解Linux内核》(第三版)《Linux内核源代码情景分析》毛德操 胡希明著

研发方向

《UNIX Network Programming》(UNP)《TCP/IP详解》《Linux内核编程》《Linux设备驱动开发》(LDD)

硬件基础

《ARM体系结构与编程》杜春雷著S3C2410 Datasheet

英语基础

《计算机与通信专业英语》

系统教程

《嵌入式系统――体系结构、编程与设计》《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明著《Building Embedded Linux Systems》

理论基础

《算法导论》《数据结构(C语言版)》《计算机组织与体系结构?性能分析》《深入理解计算机系统》【美】Randal E. Bryant David O’Hallaron著《操作系统:精髓与设计原理》《编译原理》《数据通信与计算机网络》《数据压缩原理与应用》

入门篇

《LINUX权威指南》《鸟哥的私房菜》

驱动篇

《LINUX设备驱动程序 》《Linux驱动详细解》

内核篇

《LINUX内核源代码情景分析》《莱昂氏UNIX源代码分析》《深入理解linux内核》《LINUX内核完全剖析–基于0.12内核》

shell篇

《LINUX与UNIX Shell编程指南》

应用编程

《unix环境高级编程》被称为unix编程的圣经。

TCP/IP篇

《TCP/IP详解》《unix环境高级编程》

标签: #算法导论154 #linux主要用途 #linux的用途 #linux的用途是什么 #linux主要用途有哪些