unix命令

完全用Linux工作

蓝咒 提交于 2020-02-08 10:35:31
GNU/Linux 不是每个人都想用的。如果你只需要处理一般的事务,打游戏,那么你不需要了解下面这些了。 我不是一个狂热的自由软件份子,虽然我很喜欢自由软件。这篇文章也不是用来推行自由软件运动的,虽然我觉得自由软件运动是非常好的。 这篇文章也不是用来比较 Linux 和 Windows 内核效率,文件系统,网络服务的。我现在是作为一个用户而不是一个开发者来说话的,我们的讨论是基于操作,应用层面的。是为了告诉大学里还不了解,或者不理解 UNIX 的科学工作者和大学生,UNIX 比 Windows 更适合用于科学研究工作,请大家理解 UNIX 的工作方式,不要用 Windows 的标准来要求 Linux,而要用一个科学工作者的标准来要求自己,用UNIX 的思想来武装自己。 我显然是反对在大学,特别是理工科专业推广 Windows 的。我也反对在对"娃娃"们的计算机启蒙教育中使用 Windows。因为 Windows 不论从技术上,经济上,思想风格上都是与我们培养高科技人才的目标格格不入的。Windows 的流行属于历史遗留问题,爷爷一级的人当然已经不可救药,但是我们不应该让下一代继续走上歧途。 UNIX 不是计算机专家的专利 当我建议一些非计算机专业的人用 Linux 的时候,很多人说:"UNIX 是计算机系的人用的,我们不能理解。" "UNIX 是男孩用的,我们女孩不用。"

完全用Linux工作-王垠

别说谁变了你拦得住时间么 提交于 2020-02-08 10:34:54
《完全用Linux工作》作者:王垠 完全用 GNU/Linux 工作 理解 GNU/Linux 更多精彩请直接访问 SkySeraph个人站点 : www.skyseraph.com 注:本文是清华“牛仔”王垠的“成名作”,在网上引起很大的争议。对他崇拜地五体投地者有,对他嗤之以鼻者也有,总之成了一年多以前Linux 爱好者的圈子里的一个很有意思的现象。之后他对这篇文章进行了很大的修改,已经没有了原来那种意气风发。现存的版本如白开水一般无味,请参见: http://learn.tsinghua.edu.cn/homepage/2001315450/ 尽管他原来的观点有所偏激,但我还是很欣赏他原来的风格。 “UNIX 是简单的,你不需要成为天才也能理解这种简单。” 由于GNU/Linux这个词太长,下面如果没有特别指明,“Linux”就是指“GNU/Linux”。 在这个年代,恐怕没有人需要我来介绍 Linux 是什么了吧?如果你觉得“ Linux 只不过是跟 DOS 差不多的东西”,那你恐怕很久在山洞里没见天日了吧?请问问你旁边的 Linux 用户, Linux 到底是个什么地位? 那为什么我还要写一篇这样的文章?因为,我发现还有很多人不不理解 Linux 和 UNIX ,虽然他们也在用它,但是他们有时会问:“为什么 Linux 不能像 Windows 那样 …… ?”,“怎么

一个LINUX狂人的语录

こ雲淡風輕ζ 提交于 2020-02-08 10:33:34
转载自: http://blog.csdn.net/bat603/article/details/1408283 我已经半年没有使用 Windows 的方式工作了。Linux 高效的完成了我所有的工作。 GNU/Linux 不是每个人都想用的。如果你只需要处理一般的事务,打游戏,那么你不需要了解下面这些了。 我不是一个狂热的自由软件份子,虽然我很喜欢自由软件。这篇文章也不是用来推行自由软件运动的,虽然我觉得自由软件运动是非常好的。 这 篇文章也不是用来比较 Linux 和 Windows 内核效率,文件系统,网络服务的。我现在是作为一个用户而不是一个开发者来说话的,我们的讨论是基于操作,应用层面的。是为了告诉大学里还不了解,或者不 理解 UNIX 的科学工作者和大学生,UNIX 比 Windows 更适合用于科学研究工作,请大家理解 UNIX 的工作方式,不要用 Windows 的标准来要求 Linux,而要用一个科学工作者的标准来要求自己,用UNIX 的思想来武装自己。 我显然是反对在大 学,特别是理工科专业推广 Windows 的。我也反对在对"娃娃"们的计算机启蒙教育中使用 Windows。因为 Windows 不论从技术上,经济上,思想风格上都是与我们培养高科技人才的目标格格不入的。Windows 的流行属于历史遗留问题,爷爷一级的人当然已经不可救药

UNIX系统 ---- 文件I/O

大憨熊 提交于 2020-02-07 02:45:31
一、文件描述符 对于内核而言,所有打开文件都由文件描述符引用。文件描述符是一个非负整数。当打开一个现存文件或创建一个新文件时,内核向进程返回一个文件描述符。当读、写一个文件时,用open或creat返回的文件描述符标识该文件,将其作为参数传送给read或write。 二、open函数 调用open函数可以打开或创建一个文件。 int open ( const char * pathname , int oflag , . . . , /*mode_t mode8/ ); pathname是要打开或创建的文件的名字。 oflag参数可用来说明此函数的多个选择项。 O_RDONLY 只读打开。 O_WRONLY 只写打开。 O_RDWR 读、写打开。 O_APPEND 每次写时都加到文件的尾端。 O_CREAT 若此文件不存在则创建它。 O_EXCL 如果同时指定了O_CREAT,而文件已经存在,则出错。 O_TRUNC 如果此文件存在,而且为只读或只写成功打开,则将其长度截短为 0。 O_NOCTTY 如果pathname指的是终端设备,则不将此设备分配作为此进程的控制终端。 O_NONBLOCK 如果pathname指的是一个FIFO、一个块特殊文件或一个字符特殊文件,则此选择项为此文件的本次打开操作和后续的I/O操作设置非阻塞方式。 O_SYNC 使每次write都等到物理I

Cracking Digital VLSI Verification Interview 第三章

大憨熊 提交于 2020-02-05 21:49:51
目录 Programming Basics Basic Programming Concepts Object Oriented Programming Concepts UNIX/Linux Programming in C/C++ Programming in PERL Programming Basics Basic Programming Concepts [68] 在任何一种编程语言中,静态(static)变量和自动(automatic)变量,局部(local)变量和全局(global)变量之间有什么区别? 区分这些名词需要两个概念,作用域(scope)和存储持续时间(storage duration),前者定义了在何处可以访问变量,后者定义了在何时可以访问变量。 按照变量的作用域可以区分局部(local)和全局(global)变量。局部变量的作用范围有限,尽在声明它们的代码块中可见。而全局变量在声明后在程序的任何位置都可见。 存储持续时间可以区分自动(automatic)变量和静态(static)变量。静态变量的生命周其一直持续到程序结束,因此可以始终访问。自动变量具有有限的生命周期,只能持续到程序离开定义的块或者作用域为止。 例如:在以下的systemverilog代码中,global_int被声明为类成员,并且在整个类中具有全局作用域,而当取消引用该类的对象时

linux 进程守护工具 supervisor 使用概述

痞子三分冷 提交于 2020-02-04 06:36:00
前言 以前跑代码,为了不被杀掉经常用 nohup + &,后来发现,系统认为该死的程序都得死,这就很郁闷,市面上有很多进程守护的工具,只是写的语言不同而已(例如pm2,用node语言写的),supervisor用python写的,以前支持py2,现在py3也支持,所以不用担心版本问题。我这里把一些常规的使用介绍一下,顺便说一下有任何问题查阅官网: supervisor官网 一. 安装 安装方式多种多样, 离线安装:(公司内网不和外网连通)需要提前下好安装包,用make和make install 编译安装,稍微复杂点,这里不多说,有需要就自己研究一下。 在线安装:因为supervisor是python写的,所以可以直接 pip install supervisor 进行安装;或者 yum install supervisor 进行安装;首推pip方式。 二.配置 supervisor的所有启动设置都只在一个配置文件中进行,这个配置文件是唯一且最重要的。 生成配置文件:运行 echo_supervisord_conf 命令重定向到一个文件 echo_supervisord_conf > /home/flask_pro/supervisor_config/supervisord.conf /home/flask_pro/ 这个目录是我自己建的一个flask项目的目录,

unix系统编程小结(二)------文件和目录

匆匆过客 提交于 2020-02-04 03:04:13
一.对linux的安全机制的一点感悟 各种权限,read,write,execute,set-user-ID,set-group-ID,sticky bit,对目录的权限,对文件的权限,用于保证系统安全的各种组合技,各种经典。比如,如果我们想unlink一个文件,就必须拥有该文件所在目录的write与execute的权限。 二.两个小例子 1.当文件有hole时,cp命令会同时拷贝这些hole为'\0'。这里是一个实现了拷贝时跳过文件hole的程序。ps:我用的buffer是一个字节的,效率很低,但如果用大的buffer就会使得hole被移除,使得原先分开的字符被连上。我没想好如何解决这个问题。如果您知道,请您告诉小弟我,非常感谢! View Code #include <apue.h> #include <my_error.h> #include <fcntl.h> int main() { char buf[1]; int fd,fd_to; int n; if( (fd=open("temp_in_hole",O_RDWR) )<0) err_sys("error open"); if( (fd_to=open("temp_OUT_hole",O_WRONLY))<0 ) err_sys("error open for "); while( (n=read(fd,buf,1)

Unix进程控制

 ̄綄美尐妖づ 提交于 2020-02-04 02:04:23
  wait函数和waitpid函数用于捕获子进程停止信号,获取子进程停止状态,并在子进程结束后清除该进程所占用的系统资源。其函数原型为 #include <sys/wait.h> pid_t wait(int *statloc);                      //返回已结束子进程id或-1 pid_t waitpid(pid_t pid, int *statloc, int options);     //返回已结束子进程id、0或-1   wait函数监听所有子进程,当存在任一子进程停止时,wait函数立即返回。waitpid函数监听子进程受pid参数限制,当pid>0时,pid值为指定子进程id;当pid值为0时,waitpid函数监听与父进程具有相同用户组的子进程;当pid值为-1时,waitpid函数监听所有子进程,与wait函数等价;当pid<-1时,waitpid函数监听所有用户组id与pid绝对值相等的子进程。参数statloc用于存储子进程返回状态(是否正常结束、是否异常结束、是否暂停、进程返回值),options用于指定waitpid函数何时返回。   对子进程返回状态需要使用宏定义进行判断,如: WIFEXITED(status); //子进程正常结束时为真 WIFSIGNALED(status); //子进程被异常终止时为真 WIFSTOPED

Linux与UNIX的区别与联系

依然范特西╮ 提交于 2020-02-02 02:07:54
UNIX诞生于20世纪60年代末,Windows诞生于20世纪80年代中期,而Linux诞生于20世纪90年代初,可以说UNIX是操作系统中的“老大哥”。 分时操作系统 :是一台计算机可以同时为多个用户服务,连接计算机的终端用户交互式发出命令,操作系统采用时间片轮转的方式处理用户的服务请求,并在终端上显示结果(操作系统将CPU的时间划分成若干个片段,称为时间片)。操作系统以时间片为单位,轮流为每个用户服务,每次服务一个时间片。 目前常见的UNIX版本有Sun Solaris,FreeBSD,IBM AIX,HP-UX等,值得一提的是,苹果公司的OS X就是基于FreeBSD的操作系统。 Linux是一个类似UNIX的操作系统,其设计初衷是为了替代UNIX,并在功能和用户体验上进行优化,常见版本有Debian Linux、Fedora Core、CentOS、Red Hat Linux等。 区别 : 1.UNIX系统大多是与硬件配套的,而Linux则可以运行在多种硬件平台上; 2.UNIX是商业软件,而Linux是开源软件,免费且公开源代码; 3.UNIX和Linux不存在技术上面的传承关系,Linux是从新构建的系统; 4.UNIX是一个功能非常全面的操作系统,在某些方面超越了Linux,例如大型主机的可靠性。 系统结构 : 1. 内核层: 内核层是UNIX

Linux学习书目

♀尐吖头ヾ 提交于 2020-01-30 08:00:20
Linux基础 1、《Linux与Unix Shell 编程指南》 C语言基础 1、《C Primer Plus,5th Edition》【美】Stephen Prata著 2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著 3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE) 4、《嵌入式Linux应用程序开发详解》 Linux内核 1、《深入理解Linux内核》(第三版) 2、《Linux内核源代码情景分析》毛德操 胡希明著 研发方向 1、《UNIX Network Programming》(UNP) 2、《TCP/IP详解》 3、《Linux内核编程》 4、《Linux设备驱动开发》(LDD) 硬件基础 1、《ARM体系结构与编程》杜春雷著 2、S3C2410 Datasheet 英语基础 1、《计算机与通信专业英语》 系统教程 1、《嵌入式系统――体系结构、编程与设计》 2、《嵌入式系统――采用公开源代码和StrongARM/Xscale处理器》毛德操 胡希明著 3、《Building Embedded Linux Systems》 理论基础 1、《算法导论》 2、