之前,周更在隔壁友媒给果子(@果子)搞了一套Linux题,下面是我给命题委员会提供的参考答案。 你知道Linux吗?你安装过Linux吗?你登陆过服务器吗? 知道呀,装过双系统(arch ,ubuntu,centos,deepin,kali, )和windows 10 edtion subsystem linux(Bash on Ubuntu on Windows,kali linux ),登陆过服务器 远程服务服务器相关
文件管理:请回答如下问题 如何知道自己当前所在路径 配置好ps1,显示当前路径,加上xshell 的选中复制,相当的方便了 ls的作用,你了解ls哪些参数 推荐菜鸟教程, cd的用途 推荐菜鸟教程 mkdir的用途,哪个参数可以创建a/b/c/d这种关系的文件 推荐菜鸟教程 rmdir在删除文件夹时有什么限制 只能删除空目录 如何复制文件,如何移动文件,如何对文件进行重命名 cp mv 为了避免文件误删,一般会用什么参数进行提醒 rm -rf / 有什么作用 威胁老板加工资,新版的内核会防止把自己清除,重启一下确保 如何避免自己家目录下的文件被其他用户查看和操作 chmod就够了 ln的soft link和hard link有什么区别 推荐菜鸟教程 在系统中查找某个文件有哪些策略?
文本操作 如何了解一个文件的类型 最不靠谱方法的就是文件类型看后缀呀,但是们有后缀的文件很多,那么就按找两类来处理,纯文本文件和二进制文件,方小顿还没进去那会,玩过一段时间的安全,很多文件是没有后缀的,可以通过文本格式或者二进制特征码来判断。在生信领域,很多都是文本格式,具体啥格式,打开的看看。看看生成该文件软件的doc. 如何创建一个空文件 touch 知道Vim吗,知道Vim那些快捷键 宇宙第一文本编辑器, 如何查看前10行,如何查看后10行文本 head 10 tail 10 如何统计文本的字符数和行数 wc wc - l 如何截取文本中每行部分数据 一般用 awk 如何删除CSV文件中的“,' 以及如何将','转换成制表符 sed s/,//g sed s/,/\t/g 使用cat -A 查看文件中出现了 '^M'字符,是什么造成的,如何解决? ms dos 和 unix对特殊符号的编码集不同造成的 ,有个叫 msdos2unix的工具 如何在文本中搜索某个字符 grep 文本三剑客,grep, awk, sed, 听说过吗? 听说过,只是仅仅听说过,嗯,就是这样的 grep抓取匹配行,awk 切分匹配行,sed 替换删除
系统管理 如何查看系统的CPU类型、内存大小、Linux发行版信息 sysinfo 了解下?lsb_release-a可以产看需要的版本信息,uname-a可以查看内核信息,lsblk 可以树状查看挂载信息,其他想要的信息可以看下 /proc 什么是bash,通过哪个文件修改bash的环境变量 bash 是Unix shell 的一种,也出现了很多衍生品,就像cmd 和 powershell是Windows的shell, 通常通过配置.bashrc 及其附属脚本来配置环境变量。 你觉得比较常用的环境变量有哪些,并说明原因 ps 这个是配置命令行提示符,ls_colors,改变ls 命令下输出的文件类型及颜色格式,你需要的各种软件的环境变量,你自己定义的一些快捷键,还有就是必不可少的注释,好的注释分类会减少因软件环境问题debug的工作量。 如何终止一个在后台运行的程序 kill 掉,有时候父进程kill,子进程不会终止,定时重启还是有点必要的 有哪些策略可以让运行在服务器上的命令不会因为关闭终端而被终止 开个守护进程 简单的来书就是nohup screen之类的
高级部分 什么是管道,管道符号是什么 pipe利用系统的4K cach在不同命令之间来传递文件的媒介,可以说是一种假的文件,符号是 ‘|’ 什么是重定向,重定向有哪些符号 一般的重定向只需要掌握stdin ,stdout,stderr就好了,< 读入,=""> 写入, >>追加, 2> 标准错误输出 xargs的意义是什么 将列表拆分成子项来传递 什么是subshell,subshell的用途 可以理解为当前shell 进程的子进程,用到后台执行&、管道 |、括号()、外部脚本的时候都会产生subshell. 如何创建管道文件,管道文件的用途是什么 mkfifo 创建first in first out 管道文件,异步处理,如果文件内容可按照时间序列来处理,可以缩短处理时间,通过管道文件分片存储,缓解内存的压力 如果一个软件不支持gz文件作为输入, 如何通过管道传入gz文件 gzip + |
软件安装 软件管理工具有哪些? conda bioconda apt rpm 以及常用脚本语言的包管理工具,python的pip,easy_install,perl 的ppm ,nodejs 的npm 和cnpm,go的go get.源码安装需要用到的git clone等 如何使用conda安装生信软件? 换源, conda install xxx 尝试编译一个系统以外版本的GCC 在自己的目录下安装几个新版本的GCC 还是有必要的 如果在无root权限下编译,如何添加头文件和动态库的路径 cp 一个?头文件这个东西需要把对应的vc配置好,确实不是太多的话,可以去搜一个。 请说出核心已转移(core dump)的可能原因 core dump 是操作系统在进程收到某些信号而终止运行,可能的原因,内存越界,堆栈溢出,危险进程,野指针,读写锁 运行软件如果遇到 xxxx.so 找不到的问题,你推测是那些原因 非官方封装,例如,在conda 包库中很多都是非官方的三方提交,虽然经过甄选,但是有时候因为平台环境问题出现各种各样的问题;库文件不全是另一原因,把需要的对应版本环境变量都配置好才是,我曾遇到的个例有python编译安装numba 的问题,这个需要把编译出来的so文件copy 进制定文件夹,python 文件目录下的文件夹存放的文件类型和文件用途大致了解的清楚,所以折腾起来还是比较有信心的,这也是我喜欢原生Python的一个重要原因。
|