Fish 做到了开箱即用,不需要任何配置,提供了许多其他 Shell 需要通过配置才能使用的功能。如果你既想要一个好用的 Shell,又不要去配置各种配置,那么推荐尝试一下 Fish。.../install/master/install.sh)" 不过基本上都会安装失败,此时大概率会报如下错误。...brew install fish 如果顺利的话,此时是可以安装成功的,但如果你也和我一样在安装时报以下错误信息,那么你可以根据下面的解决方法尝试解决。.../opt/homebrew/bin/fish 我的电脑安装后 Fish 是位于上面的位置,但是如果你不确定你安装后不知道在哪儿,那么可以使用以下命令进行查询 Fish 所在位置。...whereis fish 最后则是切换默认 shell,让我们之后打开终端后都是使用 Fish,运行如下命令即可。
再往下就是我踩到的所有坑的记录啦。 第1个坑 作为一个已经离不开fish-shell强大自动补全的人,踩到的第一个坑是fish-shell对virtualenv的支持问题。...解决:使用virtualfish 第2个坑 第二个坑是在Nginx上部署Flask应用的问题,个人非常不喜欢直接修改系统文件夹(例如/开头的文件夹)的部署方式,无奈这好像是Nginx的标准流程,我遇到的问题是...最后发现是我忘记创建 .sock 文件(Linux一切皆文件嘛,这个文件其实是个socket)了,在工程目录下创建完成后,发现并没有效果。...(省略) 解决:在成功运行过的基础上,遇到这个错误一般是server本身出错。...我自己的话是这样的:myapplication.py没有错,但是views.py有错,可以成功import myapplication但是一解析url就出错。修改views.py就好。
>>> #先运行p11-2.py >>> fish = Fish() >>> #试试小鱼儿能不能动 >>> fish.move() 我的位置是: 7 0 >>> goldfish = Goldfish(...__init__(self) self.hungry = True 再运行下,发现鲨鱼可以移动了: >>> #先运行修改后的p11-2.py >>> shark = Shark(...) >>> shark.move() 我的位置是: 6 0 >>> shark.move() 我的位置是: 5 0 >>> shark.move() 我的位置是: 4 0 这里需要注意的是这个self并不是父类...__init__() self.hungry = True 运行后会得到同样的结果。...): pass >>> c = C() >>> c.foo1() 我是foo1,我在Base1中... >>> c.foo2() 我是foo2,我在Base2中...
我真的曾认为我已经知道这些东西了,但是通过写这篇文章我依旧学到了一些东西,也许你也会有所收获。...需要注意的是不要在=运算符的两边放置空格符,比如VARIABLE= 2、VARIABLE = 2、或者VARIABLE =2,这并不是语法错误,但是将会做完全不需要的事情(比如试图运行一个名字为2的程序...Linux上的每个进程实际上都有环境变量(您可以运行env查看当前设置的变量),但在Bash中,它们更易于访问。...我基本上从来没有使用过这样的函数(不像我写的其他编程语言),我从来没有使用过局部变量。 for循环 以下是我在bash中编写循环的方法。 此循环将从1打印到10。...它成功会返回0,否则返回错误。 最后一件事是为什么[[比[好:如果你使用[[,那么你可以使用<做比较,它不会变成文件重定向。
7.xeyes 命令 在屏幕上出现一双眼睛,盯着你的鼠标指针 安装运行同上 ?...但这是对你的警告:任何人都可能犯这样的错误。 事实上,绝大部分现代操作系统都会在你犯这些错误之前,用一段醒目的文字警告你。然而,如果你在连续敲击键盘时忙碌或是分心,你将会把你的系统键入一个黑洞。...15.fork 炸弹 既然我们讨论的都是些奇怪的代码,不妨思考一下这一行: :(){ :|: & };: 对你来说,这可能看起来有些神秘,但是我看来,它就是那个臭名昭著的 Bash fork 炸弹。...它会反复启动新的 Bash shell,直到你的系统资源消耗殆尽、系统崩溃。 不应该在最新的 Linux 系统上做这些操作。注意,我说的是不应该。我没有说不能。...结束 我有没有遗漏什么?在 @sjvn 或 @enterprisenxt 上告诉我哪些 Linux 命令在你的“绝不要运行!”的清单上。
高频 CLI 工具推荐 1fish shell Shell- 毋庸置疑,在终端中,Shell 是使用最频繁也最重要的工具。...过去,我曾经使用过 Bash 和 Z Shell,而如今,我正在使用的是 Fish Shell。...虽然前面我提到了 Fish Shell 的几个缺点,但是我还是会推荐你去用一下,因为切换 Shell 工具十分简单,所以很值得你去尝试一下。...过去,我有使用很多的插件(比如 rbenv、pyenv、nodenv、fzf、z),但是我改用其他工具以避免影响我的 Shell 的运行速度(这是我过去使用 Z shell 所得到的一个教训)。...如果上一个命令执行失败,会展示相应的错误提示符。 还有不计其数的其他信息可以展示。但是,它能以更加友好的形式智能地给你呈现!比如,如果你不在 git 存储库中,它将隐藏 git 信息。
SHELL\_NAME>Currently supported shells are: - bash - fish - tcsh - xonsh - zsh - powershellSee...shell after running 'conda init'.这个问题会出现在你用conda activate your_env的时候,其他的conda env list,创建环境等都是正常的,你按照上面的提示...init大概率也是不行的。...尝试了网络上其他人的建议均无法解决问题。其实这个问题在我的windows系统上也见过,直接在cmd命令行里执行conda相关命令也会出现这个问题,但在anaconda里却是一切正常。...用了几天也没有解决这个问题,遂放弃在colab上弄了。后面在国内大厂弄了台云服务器,在上面安装conda环境,于是一切正常,也没有什么奇奇怪怪的报错。
没事了,但是我还是不甘心,对着目录搜索了一通, 看到了个 login.jsp,直接对着源码进行一个的看,看到了一堆未授权的页面,但是都是测试页面,继续 pass 此时已经开始有点心灰意冷了,打开了...我心里此时想到了一个很可怕的 BT 防御手法 世界上怎么会有这么坏的人,气抖冷。 然后使用 sqlmap 自带的上传,,上传的速度过于捉急。...然后就是转换成 hex,愉快的上传,上传之前本地测试了一下,vs2022 编译,是没法在 win2k 运行的,nmd 怎么回事? 但是 GCC 编译的却可以,草,海星,没事了。...草李莱莱,好歹你给我报个错误啊草草草啊啊啊啊啊啊啊 我试图直接改成 10000000,但是 tmd,sqlserver 2000 的最大只支持 8000。...windows 2000 下抓凭据,用什么 mimiaktz 是不好使的,也太大了,什么 porcdump 也不行,但是有一个远古工具,pwdump6,可以在 windows2000 下运行
先给大家列个推荐清单,如下图: 高频 CLI 工具推荐 1fish shell Shell- 毋庸置疑,在终端中,Shell 是使用最频繁也最重要的工具。...过去,我曾经使用过 Bash 和 Z Shell,而如今,我正在使用的是 Fish Shell。...虽然前面我提到了 Fish Shell 的几个缺点,但是我还是会推荐你去用一下,因为切换 Shell 工具十分简单,所以很值得你去尝试一下。...过去,我有使用很多的插件(比如 rbenv、pyenv、nodenv、fzf、z),但是我改用其他工具以避免影响我的 Shell 的运行速度(这是我过去使用 Z shell 所得到的一个教训)。...如果上一个命令执行失败,会展示相应的错误提示符。 还有不计其数的其他信息可以展示。但是,它能以更加友好的形式智能地给你呈现!比如,如果你不在 git 存储库中,它将隐藏 git 信息。
更新 yum 源仓库 yum update 安装 Git yum 源仓库里最新版本的 Git 是 1.8.3.1,但是官方最新版本已经到了 2.9.2。...安装 我选择使用nvm安装和管理服务器上的Node。...可以通过bass让 fish-shell 可以使用 bash 环境下的工具。...nvm bass source ~/.nvm/nvm.sh ';' nvm $argv end 现在就可以在fish-shell中使用nvm了。.../configure // 因为我使用的是 fish-shell。
我努力尝试在 Windows 上使用同样的 Emacs 设置(并去掉一些显然不可能的操作,比如在 Windows 上使用 Nix 等),但很快我就发现,这完全是在浪费时间。...将 Linux/macOS 的配置改成 Windows 需要修改的地方太多了。算了,我还是直接使用 VSCode 吧。它在 NixOS 上运行良好,所以在 Windows 上应该问题不大吧?...02 开发工具 我使用的终端是 st,shell 是 fish。这个组合其实非常好,因为加载速度很快,并且 fish 支持很多好用的功能,例如基于历史的自动补齐等。...我很奇怪,做了一些调查,然后发现原来是 Windows 自带的 ssh 版本太老了。这一点可以理解,在 Windows 系统中加入某个工具时,最好还是选择比较老的版本,这样才能保证长期的兼容性。...但是,我可以用它 ssh 到我的服务器上,然后实现 Weechat 中的点击。 也许我应该看看在 WSL 中运行类 NixOS 的系统难不难,但 WSL 没办法运行 systemd,所以还是算了。
,但是存入是二进制文件,直接打开是乱码; ---- 11.Python 错误和异常抛出 总结下异常处理机制的重要性: 由于环境的不确定性和用户操作的不可以预知性都可能导致程序出现各种问题,因此异常机制最重要的无非就是...print("没有异常错误我才执行") finally: print("不管有木有错我都要执行") print("----------------------") #案例6 with语言的使用...局部变量:定义在方法中的变量,只作用于当前实例的类。 实例变量:在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。...1 print("我得位置是:",self.x,self.y) class Shark(Fish): def __init__(self): super()....(2) 类的算法运算魔术方法 描述:在Py2.2以前类和类型是分开的(实际是类和属性的封装),但是在之后作者进行了统一(将Python类型转换成为工厂函数),例如: 工厂函数其实就是一个类对象,当你调用他们的时候
学习shell时,我也只是草草了事,没有仔细对比三种编程语言间的差别和特点,自认为很聪明的把python和R的相关基础知识直接迁移到了shell。...然后我就愉快地去重并call variant,但是当我查看g.vcf文件时发现样本名为W0 这是怎么回事?...得,全是这么诡异符号。我又查看了每个bam文件的RG行没错,所有bam文件RG行的ID、SM都是W0${i}!!!...在shell中单引号和双引号括起来的字符串有什么不同吗? ? 4 (截图来自 C语言中文网) 很明显,我犯的错误属于第一种情况:由单引号包围的字符串任何字符都会原样输出,在其中使用变量是无效的!。...根据截图所言,推而广之:我们在命令行中使用的各种命令、运行的各种软件本质上都是字符串,只不过我们没有加上 单引号或双引号作为标识,属于 第三种情况。
, [在实际中不建议使用这样的方法]") #安装2:指定的异常进行指定的操作 try: f = open('noexsitfile.txt') #运行到这里直接跳到OSerror异常执行响应的代码...print("没有异常错误我才执行") finally: print("不管有木有错我都要执行") print("----------------------") #案例6 with语言的使用...局部变量:定义在方法中的变量,只作用于当前实例的类。 实例变量:在类的声明中,属性是用变量来表示的。这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。...1 print("我得位置是:",self.x,self.y) class Shark(Fish): def __init__(self): super()....(2) 类的算法运算魔术方法 描述:在Py2.2以前类和类型是分开的(实际是类和属性的封装),但是在之后作者进行了统一(将Python类型转换成为工厂函数),例如: 工厂函数其实就是一个类对象,当你调用他们的时候
无论你是使用 bash、fish、还是 Windows 上的 PowerShell,抑或其他 shell,你都可以利用Starship 来定制外观。...我是在 Ubuntu 上使用 bash shell 来测试的。你可以参考我提到的步骤,或者你可以看看 官方安装说明,以获得在你的系统上安装它的更多选择。...Starship 的亮点 跨平台 跨 shell 支持 能够添加自定义命令 定制 git 体验 定制使用特定编程语言时的体验 轻松定制提示符的每一个方面,而不会对性能造成实质影响 在 Linux 上安装...所以,当你试图使用文件管理器从主目录访问它时,请确保在继续之前 启用查看隐藏文件。 接下来如果你想探索一些你喜欢的东西,你应该参考配置文档。...但是,即使如此,它也可以让你用很少的努力实现一个自定义的提示符或精简的提示符,你可以应用于任何普通的 shell 和你正在使用的系统。
大家好,又见面了,我是你们的朋友全栈君。...: 控件元素 :param pos1: 希望控件所在屏幕上的最低限 :param pos2: 希望控件所在屏幕上的最上限 :param high: 固定坐标 :param low: 滑动起始或终点位置...如果超时了还没有出现,同样也会返回,但是调用这个UI的操作时会报错。...一般情况下,通过名字选择是最简单的方式,但是在一些情况下,并不是每个UI控件都有命名,特别是通过代码动态生成和加载的UI,一般都没有一个有意义的名字。...,或者说不起作用的操作,例如点击到了屏幕外面,或者对一个图片设置text属性(输入框才能设置text属性)。
一、Fish跟默认的bash shell有什么不一样 什么是fish,Fish又称为Friendly shell for interactive use。...Fish设计之初能兼容其他shell的命令, 并且会比其他shell更友好而且又高效。在一些特性上,fish做了改进,这和其他shell比如bashl是有区别的。...比如 image.png 1.3 输出重定向和错误重定向,>和^ 这里的^file是写错误输出到目标文件,^^file是追加错误到目标文件。错误重定向这个跟版本有关系,在fish2是有这个功能。...Bash是2>, fish也可以使用^,但是在新版本fish已经遗弃了 另外在file前追加?代表操作之前先判断该文件存不存在。...当前命令,$status上一条命令执行的状态 0:成功 1:执行失败 121:无效的输入参数 123:参数字符串不对 124:通配符没有匹配到任何东西 125: 找到命令路径,但运行不了 126:
前言大家好,今天来聊聊如何在 Mac 上安装 ESP-IDF,特别是对于 M1 芯片的用户,安装过程可能会有一些小坑,但是跟着这个步骤来,问题应该不大。我们分成几个步骤,逐步来解决。...第一步:安装准备首先,如果你要在 ESP32 上使用 ESP-IDF,得先准备一些软件包。根据你的操作系统不同,安装的方式也会有些差异。我们这里主要讲讲 Mac 的安装过程。.../install.sh all如果你使用的是 Fish shell,命令稍有不同:....下面是我在配置过程中遇到的问题和解决方案。...小结安装 ESP-IDF 在 macOS 上的过程其实并不复杂,但确实会遇到一些小问题,特别是在 M1 芯片和 Python 版本上。只要按照这个步骤逐步排查,相信你会顺利安装并开始开发。
当然貌似能通过命令的方式手动写arp表,但是当时还想着刷机完,就没尝试,现在有点后悔了。 给路由器刷机其实非常简单,首先我们得获得路由器的shell。但是坑爹的小米没有给你ssh的权限。...下载以下文件,然后解压后就可以得到Openwrt的breed直装固件了。 这里我记得刷sysupgrade的固件即可。 openwrt的页面非常好看,功能也非常丰富,但是它有一个非常奇怪的特性。...但是我找不到如何设置模式,网上也没有这种问题的解决方案。 当时我想到了一个解决方案,就是用我上次写的校园网自动认证脚本来让路由器过校园网认证。...但是这起码得有curl命令,但是路由器默认没有curl,而下载命令需要网络。我甚至还试图用笔记本的网络来共享给路由器,结果不知道为什么不行,总之非常的折磨( 然后就放弃了,准备刷padavan。...这样我就得到了两个脚本。运行任意一个就可以在公网唤醒我的笔记本。 视频演示 战术总结 刷机过程挺有趣的,学习到了许多。 解决了之前学校路由器没有arp绑定的痛点。