使用bash脚本写wpa_cli命令的时候遇到的变量传递的问题

如题,我在使用 wpa_cli 这个命令写入wifi信息的时候感觉每次都要打很长的代码
于是写了一个bash脚本想使得写入更加轻松,但是在写入的时候遇到了变量调用的问题
希望大家能看一看哪里出了问题
代码大概如下:

read -p "intput a SSID:" ssid
read -p "input password of $ssid :" psk

a= ./wpa_cli -i wlp5s0 add_network
./wpa_cli -i wlp5s0 set_network $a ssid '"$ssid"'
./wpa_cli -i wlp5s0 set_network $a psk '"$psk"'

如上所示 ./wpa_cli -i wlp5s0 add_network 这个命令会返回给窗口一个值(networkid),是这样子的
图片说明
于是我希望用 a= ./wpa_cli -i wlp5s0 add_network 这样一个命令来获取这个返回值,证明后发现是不可以的,那么我怎么样能够获得 ./wpa_cli -i wlp5s0 add_network这个命令返回给我的network id的值呢?

然后的问题也随之而来,使用 wpa_cli 命令设置这个网络的ssid和psk需要用到
$ wpa_cli -i wlan0 set_network 0 ssid '"name"'
$ wpa_cli -i wlan0 set_network 0 psk '"psk"'
这两种命令
图片说明
这里面的name和psk外面包的是单引号加上双引号
而我想用之前获取的ssid和psk还有networkid来完成同样的操作
a= ./wpa_cli -i wlp5s0 add_network
./wpa_cli -i wlp5s0 set_network $a ssid '"$ssid"'
./wpa_cli -i wlp5s0 set_network $a psk '"$psk"'
这里面被单双引号包括的$ssid和$psk还是一个变量了吗
而运行了这个脚本之后发现确实存在问题
networkid也没有成功的用$a变量替换掉,ssid和psk也没有
图片说明
如图所示
请问大神们有什么方法能让我在单双引号中调用这个变量呢,转义符可以吗?

说了这么多 主要问题应该在于如何在 ‘ “ ” ’ 中引入变量
and
如何能获得创建的network id的值到一个变量上?

2个回答

wpa_cli set_network 0 ssid '"'$ssid'"'
注意:$ssid两边的
单引号 双引号 单引号

下面是我实际使用的脚本, 亲测可用
1)
echo NetGear-123 > /nvram/wifi.conf
echo 12345678 >> /nvram/wifi.conf

2) 下面ssid=**反单引号**cat /nvram/wifi.conf | sed -n '1p**' 再反单引**号
反单引号就是和“~”按键一起的符号. 网页排版不太对。

如图
图片说明

ssid=cat /nvram/wifi.conf | sed -n '1p'
passwd=cat /nvram/wifi.conf | sed -n '2p'

echo '"'${ssid}'"'
echo '"'${passwd}'"'

wpa_cli -p /tmp/wpa_ctrl scan
wpa_cli -p /tmp/wpa_ctrl scan_results
wpa_cli -p /tmp/wpa_ctrl remove_network 0
wpa_cli -p /tmp/wpa_ctrl add_network
wpa_cli -p /tmp/wpa_ctrl set_network 0 ssid '"'$ssid'"'
wpa_cli -p /tmp/wpa_ctrl set_network 0 key_mgmt WPA-PSK
wpa_cli -p /tmp/wpa_ctrl set_network 0 psk '"'$passwd'"'
wpa_cli -p /tmp/wpa_ctrl select_network 0
wpa_cli -p /tmp/wpa_ctrl status

udhcpc -i wlan0 -qn -s /etc/udhcpc.sh

如图
图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
wifi 通过wpa_cli 连接,status显示CTRL-EVENT-CONNECTED,dhcpcd 获取到ip,ping网关失败,ping外网失败

wifi 通过wpa_cli 连接,status显示CTRL-EVENT-CONNECTED,dhcpcd 获取到ip,ping网关失败,ping外网失败 Interactive mode > status bssid=cc:08:fb:9f:85:82 freq=5745 ssid=v-silicon-qa id=0 mode=station pairwise_cipher=CCMP group_cipher=CCMP key_mgmt=WPA2-PSK wpa_state=COMPLETED ip_address=192.168.0.116 p2p_device_address=00:f4:8d:2d:d2:39 address=00:f4:8d:2d:d2:39 uuid=d1dacf63-a430-5e73-a127-b09d52dc25bf <3>CTRL-EVENT-STATE-CHANGE id=0 state=9 BSSID=cc:08:fb:9f:85:82 SSID=v-silicon-qa <3>CTRL-EVENT-CONNECTED - connection to cc:08:fb:9f:85:82 completed (auth) [id=0 id_str=] console:/ # ifconfig sit0 Link encap:IPv6-in-IPv4 inet6 addr: ::127.0.0.1/96 Scope: Unknown UP RUNNING NOARP MTU:1480 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:842 dropped:0 overruns:842 carrier:0 collisions:0 txqueuelen:1 RX bytes:0 TX bytes:0 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope: Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:106 errors:0 dropped:0 overruns:0 frame:0 TX packets:106 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:13999 TX bytes:13999 wlan0 Link encap:Ethernet HWaddr 00:f4:8d:2d:d2:39 Driver rtl88x2bu inet addr:192.168.0.116 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::2f4:8dff:fe2d:d239/64 Scope: Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:63022 errors:0 dropped:6 overruns:0 frame:0 TX packets:2013 errors:0 dropped:2 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:9451320 TX bytes:173234 eth0 Link encap:Ethernet HWaddr 42:55:4f:12:e4:7d Driver trix-dwmac UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:13 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 TX bytes:1977 Interrupt:7 Base address:0x4000 console:/ # ping 192.168.0.1 connect: Network is unreachable

bash脚本执行问题,谢谢!

此bash脚本功能是用一个软件(已安装)循环处理一个路径下的数据,第一行是 #! /bin/bash。 写好之后, chmod -x try.sh ./try.sh 返回说Permission denied 但是直接用bash try.sh就可以运行(top后看到服务上有) 不知为什么???????????????????????????? 现在which bash是/bin/bash PS:之前是直接bash报错,chmod -x try.sh再./try.sh可以,可是which bash有问题,就改了/bin/bash

Bash脚本无法执行Go命令

<div class="post-text" itemprop="text"> <p>I'm trying to write a bash script to automatically run a go get/install in different directories. The relevant part is here: </p> <pre><code>( cd ../web ; go get ) ( cd ../web ; go install ) ( cd ../services ; go get ) ( cd ../services ; go install ) </code></pre> <p>When I execute the script, I get this though: </p> <ul> <li>cd ../web </li> <li>go get<br> ./staging.sh: line 43: go: command not found </li> <li>cd ../web </li> <li>go install<br> ./staging.sh: line 44: go: command not found </li> <li>cd ../services </li> <li>go get<br> ./staging.sh: line 45: go: command not found </li> <li>cd ../services </li> <li>go install<br> ./staging.sh: line 46: go: command not found </li> </ul> <p>If I just go to the directories manually and run the commands, they work fine. Why aren't they executing when running from the script?</p> </div>

linux下 命令问题 tab键失效

[hadoop@Hadoop1 ~]$ cd hadbash: !ref: 为绑定变量 bash: !ref: 为绑定变量 bash: words[i]: 为绑定变量 [hadoop@Hadoop1 ~]$ source /etc/profile bash: HISTCONTROL: 为绑定变量 bash: XTERM_VERSION: 为绑定变量 bash: local256: 为绑定变量 bash: USER_LS_COLORS: 为绑定变量 bash: KSH_VERSION: 为绑定变量 bash: ZSH_VERSION: 为绑定变量 bash: ZSH_VERSION: 为绑定变量 [hadoop@Hadoop1 ~]$ vim /etc/profile 输入命令时,tab键不能自动补全

Linux Bash脚本理解的问题

我看到一段bash脚本,请问怎么理解?这个hide 和下面的 ${hide} echo hide := @ SHOWTIMECMD := date "+%Y/%m/%d H:%M:%S" ifeq ($(TRUSTZONE_PARTITION),yes) ifneq ($(wildcard $(TRUST_TEE_WD)/build.sh),) $(hide) echo $(SHOWTIME) $@ ing ... $(hide) echo -e \\t\\t\\t\\b\\b\\b\\bLOG: $(LOG_DIR)$(PROJECT_NAME)_$@.log $(hide) rm -f $(LOG_DIR)$(PROJECT_NAME)_$@.log $(LOG_DIR)$(PROJECT_NAME)_$@.log_err $(hide) $(SHELL) $(TZ_BUILD_SCRIPT) $(PROJECT_NAME) $(DEAL_STDOUT) $(hide) cp -f $(TRUST_TEE_IMAGES) $(LOG_DIR)/$(PROJECT_NAME)/ else $(hide) echo Not find $(TRUST_TEE_WD)/build.sh, skip $@. endif else $(hide) echo Not support $@. endif 欢迎讨论,谢谢!

从Golang执行Bash脚本

<div class="post-text" itemprop="text"> <p>I am trying to figure out a way to execute a script (.sh) file from Golang. I have found a couple of easy ways to execute commands (e.g. os/exec), but what I am looking to do is to execute an entire sh file (the file sets variables etc.).</p> <p>Using the standard os/exec method for this does not seem to be straightforward: both trying to input "./script.sh" and loading the content of the script into a string do not work as arguments for the exec function. </p> <p>for example, this is an sh file that I want to execute from Go:</p> <pre><code>OIFS=$IFS; IFS=","; # fill in your details here dbname=testDB host=localhost:27017 collection=testCollection exportTo=../csv/ # get comma separated list of keys. do this by peeking into the first document in the collection and get his set of keys keys=`mongo "$host/$dbname" --eval "rs.slaveOk();var keys = []; for(var key in db.$collection.find().sort({_id: -1}).limit(1)[0]) { keys.push(key); }; keys;" --quiet`; # now use mongoexport with the set of keys to export the collection to csv mongoexport --host $host -d $dbname -c $collection --fields "$keys" --csv --out $exportTo$dbname.$collection.csv; IFS=$OIFS; </code></pre> <p>from the Go program:</p> <pre><code>out, err := exec.Command(mongoToCsvSH).Output() if err != nil { log.Fatal(err) } fmt.Printf("output is %s ", out) </code></pre> <p>where mongoToCsvSH can be either the path to the sh or the actual content - both do not work.</p> <p>Any ideas how to achieve this? </p> </div>

将php变量传递给使用shflags的bash脚本

<div class="post-text" itemprop="text"> <p>I am trying to make a PHP program triggered by a web submit tell a bash script to run with a single command line parameter. I am using the shflags command line parser for bash.</p> <p>The pertinent part of the PHP script is as follows:</p> <pre><code>// generate unique filename $destinationFolder = Mage::getBaseDir('media') . DS . 'webforms' . DS . 'xml'; $filename = $destinationFolder . DS . $result-&gt;getId().'.xml'; // create folder if (!(@is_dir($destinationFolder) || @mkdir($destinationFolder, 0777, true))) { throw new Exception("Unable to create directory '{$destinationFolder}'."); } // export to file $xmlObject-&gt;getNode()-&gt;asNiceXml($filename); // define parameters to pass exec ( '/opt/bitnami/apache2/htdocs/sfb/scripts/xform.sh --xmlfile'.' '.$filename); } } ?&gt; </code></pre> <p>The bash script (xform.sh) (just a test script) is as follows.</p> <pre><code>#!/bin/bash . ./shflags echo "foo" &gt;&gt; /opt/bitnami/apache2/htdocs/sfb/scripts/seeds/xform/$$".txt" echo "foo" &gt;&gt; /opt/bitnami/apache2/htdocs/sfb/scripts/seeds/xform/foo.txt DEFINE_string 'xmlfilename' 'test' 'filename of current x.xml file from webforms' 'Z' FLAGS "$@" || exit 1 eval set -- "${FLAGS_argv}" echo "xml file was" ${FLAGS_xmlfilename} &gt;&gt; /opt/bitnami/apache2/htdocs/sfb/scripts/seeds/xform/foo.txt </code></pre> <p>The bash script works correctly from the command line, i.e. </p> <pre><code>$xform.sh --xmlfilename 1.xml </code></pre> <p>writes "xml file was 1.xml" to the foo.txt file.</p> <p>When the PHP script is triggered from the web, the first part works correctly, i.e. it writes "foo" to the two target files, foo.txt and $$.txt. However, the xmlfilename variable is not coming along, and I really need that file name to be passed to the command line! (Note I should not need to use escapeshellarg because the file name is generated by my PHP program, not by user input.)</p> <p>I have checked all the file permissions I can think of. xform.sh and shflags are both members of the www-data (Apache) group, owned by Apache, and a+x. </p> <p>My suspicions are that the problem is related either to a) my PHP exec syntax or b) file permissions. Everything works as intended except the bit after xform.sh in this line!</p> <pre><code>exec ( '/opt/bitnami/apache2/htdocs/sfb/scripts/xform.sh --xmlfile'.' '.$filename); </code></pre> <p>UPDATE:</p> <p>I've narrowed the problem some more by isolating the problem with some test code. With:</p> <pre><code>$script="echo"; $xmlfilename="$filename"; $target="&gt;&gt; /opt/bitnami/apache2/htdocs/sfb/scripts/seeds/xform/foo.txt"; exec ("$script $xmlfilename $target"); </code></pre> <p>...</p> <p>PHP correctly writes the $filename to foo.txt, so $script works when value is "echo" and $filename works too.</p> <p>When I set $script to a different simple form of the xform script that (only) writes the data to the file, that also works correctly. </p> <p>So the problem is specifically with something that happen when PHP tries to write the $filename as a command line variable. Does a script run by Apache need more permissions than usual if it includes a command line variable?</p> <p>Sigh.</p> </div>

使用git Bash安装脚手架vue-cli,出现报错

![图片说明](https://img-ask.csdn.net/upload/201711/01/1509516891_65349.png) 哪位大神知道这是什么报错?

通过PHP进行Bash脚本

<div class="post-text" itemprop="text"> <p>I'm having problems trying to run the following script through php using the shell_exec() function.</p> <pre><code>#!/bin/bash /usr/bin/sshpass -p 'password' /usr/bin/rsync -avzhe -O "ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -p port" --exclude '*html' --include='R*' --exclude '*' username@ipaddress:/location/ /location </code></pre> <p>When I run this script in Terminal or through php shell_exec() I receive the following error:</p> <pre><code>Unexpected remote arg: username@IP:/location/ rsync error: syntax or usage error (code 1) at main.c(1201) [sender=3.0.6] </code></pre> <p>If I remove the '-O' from the rsync part it works fine in terminal but through php I get the following error:</p> <pre><code>rsync: failed to set times on "/destination_location/.": Operation not permitted (1) rsync: mkstemp "/location/.file.pSnb11" failed: Permission denied (13) rsync: mkstemp "/location/.file.hR7VUM" failed: Permission denied (13) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1505) [generator= </code></pre> <p>Below is the php code.</p> <pre><code>&lt;?php if (isset($_POST['button'])) { shell_exec('/location/rsync.sh'); } ?&gt; &lt;html&gt; &lt;body&gt; &lt;form method="post"&gt; &lt;p&gt; &lt;button name="button"&gt;Run Script&lt;/button&gt; &lt;/p&gt; &lt;/form&gt; &lt;/body&gt; </code></pre> </div>

请教bash脚本首行需要的文件的输入,不懂

我的bash脚本的操作对象是linux下的某个目录中的file.txt,这该怎么写呢? 就是当我见到别人bash脚本的第一行是i=input.txt,那我该用什么来代替这个input?orinput.txt?(设路径为/home/xiaoming/file.txt)求给行代码~

sh脚本在调用其他sh脚本的时候修改改脚本中的变量数值

执行a.sh去调用b.sh,在b.sh中有个变量num=10,我现在在a.sh文件中调用b.sh 的地方修改b.sh中num的变量 文件的内容: a.sh: ``` b.sh --num 5 ``` b.sh文件: ``` num=10 echo "num is $num" ``` 但是这样执行下来,b.sh文件打印的num的数值还是10,请问是我哪里写错了吗?

linux bash脚本看看哪错了

代码: #!/bin/bash FFMPEG_BIN="ffmpeg-4.2.2/ffmpeg" MUSIC_PATH="music" if [[ -d ${MUSIC_PATH} ]]; then echo "MUSIC_PATH exists." flac_files=`find ${MUSIC_PATH} -name "FLAC1_*.flac"` if [[ -z "${flac_files}" ]]; then echo "No flac files in directory ${MUSIC_PATH}" exit fi echo "Start to convert flac format to mp3 format" for input_file in ${flac_files} do output_file=${input_file/flac/mp3} echo -e "\n${input_file} ==> ${output_file}" ${FFMPEG_BIN} -i "$input_file" -ab 320k -map_metadata 0 "${output_file}" done else echo "MUSIC_PATH doesn't exist." fi ``` ``` 输出结果: MUSIC_PATH exists. No flac files in directory music 大佬们看看哪错了上面一部分代码可以执行主要是下面一部分执行不了。或者重新帮忙写段代码(谢谢!) 问题是: 用vim写个bash脚本,判断某个文件是否存在,如果存在,调用ffmpeg将文件夹下以FLAC1_ 开头的扩展名为.flac的文件转换为mp3格式

PHP使用sudo执行bash脚本无法正常工作

<div class="post-text" itemprop="text"> <p>I am unable to run a bash script using sudo with the shell_exec() function in PHP. I get an error saying:</p> <blockquote> <p>Sorry, user apache is not allowed to execute '/bin/bash /var/www/html/private/createFTP.sh' as root on test.server.com.</p> </blockquote> <p>PHP:</p> <pre><code>shell_exec('sudo bash /var/www/html/private/createFTP.sh 2&gt;&amp;1');</code></pre> <p>Visudo:</p> <pre><code>apache ALL=NOPASSWD: /var/www/html/private/createFTP.sh</code></pre> </div>

我如何从我的PHP脚本传递一个变量并将其发送到我的bash脚本

<div class="post-text" itemprop="text"> <p>okay so heres my bash command i want to send a variable to </p> <pre><code>perl -pi -e 's/ : /:/g' /opt/lampp/htdocs/"variable needs to go here" </code></pre> <p>i then have my variable in php wich is </p> <pre><code>$filename </code></pre> <p>how do i edit my bash script to accept the variable and how do i pass the variable and execute the bash from php any help would be appreciated. i just cannot figure out how i would make the bash ready to accept a variable and how to make php send it and execute th script </p> </div>

bash脚本中的“ source〜/ .profile”不起作用

<div class="post-text" itemprop="text"> <p>To permanently update ~/.profile with source, only working on manual input. Also reboot of the whole system won‘t update ~/.profile and i need to update it manual.</p> <p>Is there a special code style to use it as working code inside a bash/shell script or is this special code not intended to be used in automated scripts?</p> <p>Need it to automate installation of golang.</p> <p>In the following code the line "source ~/.profile" won't work, and without any error messages, the rest is working fine:</p> <pre><code>#!/bin/bash sudo apt update sudo apt -y upgrade cd ~ curl -O https://dl.google.com/go/go1.12.5.linux-amd64.tar.gz tar xvf go1.12.5.linux-amd64.tar.gz sudo chown -R root:root ./go sudo mv go /usr/local cd ~ sudo rm go1.12.5.linux-amd64.tar.gz sudo echo "export GOPATH=\$HOME/work" &gt;&gt; ~/.profile sudo echo "export PATH=\$PATH:/usr/local/go/bin:\$GOPATH/bin" &gt;&gt; ~/.profile source ~/.profile </code></pre> </div>

在php中运行bash脚本

<div class="post-text" itemprop="text"> <p>I have two computers. On the first computer I have apache running with all my web code. On the second computer I have large amounts of data stored with a retrieval script (the script usually takes hours to run). I am essentially creating a web UI to access this data without any time delay. </p> <p>so I call:</p> <p><code>exec("bash initial.bash");</code></p> <p>this is a driver script that is in my Apache folder. It calls the script on the other computer. calling: <code>ssh otherMachine temp.bash&amp;</code></p> <p>this script invokes the data retrieval script on the second computer. </p> <p>If I call initial.bash in the terminal, everything works smoothly and successfully, but if I call it in my PHP file, then all my commands in initial.bash run, with the exception of <code>ssh otherMachine temp.bash&amp;</code>. I put the &amp; at the end of that, so that temp.bash will run in the background, since it does take a few hours to complete. </p> <p>I am not sure why the nested script is not running when invoked by Apache. Is there a better alternative than using exec or shell_exec to call a script, which ultimately calls another script. The reason I don't call a script on the second machine directly is because of the time it takes the program to run. Shell_exec does not render the php page until the script is complete. </p> </div>

使用cli args调用php脚本的bash脚本

<div class="post-text" itemprop="text"> <p>I need to write a bash script that wraps a php script, I have some variables that needs to be forwarded to the php script and some variables that I need internally for the bash script it self.</p> <p>The call for the shell script should look like that but the php file can have more params so it needs to be generic : </p> <pre><code>bash /tmp/test.sh -c -l /tmp/aaa -php aaa.php -d -p 3 -f 2012-10-23 </code></pre> <p>the <code>-php</code> option is mandatory because it contains the php file that needs to be called the <code>-c</code> and <code>-l</code> are optional flag and needs to be used internally for the bash script, everything after the <code>aaa.php</code> are params for the php file.</p> </div>

shell脚本中一个全局变量怎么指向另一个脚本?

采用管理员身份登陆Linux系统,shell版本为bash。 /home目录下有四个脚本:menu.sh add.sh delete.sh passwd.sh。 在menu.sh中,dataSource变量指向passwd.sh,AddUsers变量指向add.sh,DeleteUsers变量指向delete.sh。还写了一个homePath变量,应该指向什么。 请详细说明,最好写成代码。谢谢。

linux:bash shell脚本中 scp命令传输文件。目标文件名称为 "?"

``` dispatch_so(){ MAPPING_FILE=$1 SRC_HOME=$2 for fn in ${folder_list[*]} do echo "=====" while IFS='=' read -r SRC TARGET USERS PASWD TARGETDIR do if [ "$SRC" = "$fn" ];then echo "scp ${SRC_HOME}/${SRC} ${USERS}@${TARGET}:${TARGETDIR}" scp ${SRC_HOME}/${SRC} ${USERS}@${TARGET}:${TARGETDIR} if [ $? = 0 ];then RES="success";else RES="failed";fi fi #echo "$MAPPING_FILE" done < ${MAPPING_FILE} if [ "$RES" = "success" ] then echo "succ===$fn" # echo "rm -rf ${PACK_HOME}/$fn" # rm -rf ${PACK_HOME}/$fn; fi done } ``` 将上述代码echo出的语句直接执行。可以成功将文件传输过去,且不会出现文件名为?的情况。 echo出来的命令为:scp /home/contin/packs/test.so cina@10.20.27.100:/home/cina/ssr/ 传输结果为:-rw-r--r-- 1 cina testd 240770 4月 11 15:37 ?

大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了

大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...

在中国程序员是青春饭吗?

今年,我也32了 ,为了不给大家误导,咨询了猎头、圈内好友,以及年过35岁的几位老程序员……舍了老脸去揭人家伤疤……希望能给大家以帮助,记得帮我点赞哦。 目录: 你以为的人生 一次又一次的伤害 猎头界的真相 如何应对互联网行业的「中年危机」 一、你以为的人生 刚入行时,拿着傲人的工资,想着好好干,以为我们的人生是这样的: 等真到了那一天,你会发现,你的人生很可能是这样的: ...

程序员请照顾好自己,周末病魔差点一套带走我。

程序员在一个周末的时间,得了重病,差点当场去世,还好及时挽救回来了。

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

和黑客斗争的 6 天!

互联网公司工作,很难避免不和黑客们打交道,我呆过的两家互联网公司,几乎每月每天每分钟都有黑客在公司网站上扫描。有的是寻找 Sql 注入的缺口,有的是寻找线上服务器可能存在的漏洞,大部分都...

点沙成金:英特尔芯片制造全过程揭密

“亚马逊丛林里的蝴蝶扇动几下翅膀就可能引起两周后美国德州的一次飓风……” 这句人人皆知的话最初用来描述非线性系统中微小参数的变化所引起的系统极大变化。 而在更长的时间尺度内,我们所生活的这个世界就是这样一个异常复杂的非线性系统…… 水泥、穹顶、透视——关于时间与技艺的蝴蝶效应 公元前3000年,古埃及人将尼罗河中挖出的泥浆与纳特龙盐湖中的矿物盐混合,再掺入煅烧石灰石制成的石灰,由此得来了人...

讲一个程序员如何副业月赚三万的真实故事

loonggg读完需要3分钟速读仅需 1 分钟大家好,我是你们的校长。我之前讲过,这年头,只要肯动脑,肯行动,程序员凭借自己的技术,赚钱的方式还是有很多种的。仅仅靠在公司出卖自己的劳动时...

上班一个月,后悔当初着急入职的选择了

最近有个老铁,告诉我说,上班一个月,后悔当初着急入职现在公司了。他之前在美图做手机研发,今年美图那边今年也有一波组织优化调整,他是其中一个,在协商离职后,当时捉急找工作上班,因为有房贷供着,不能没有收入来源。所以匆忙选了一家公司,实际上是一个大型外包公司,主要派遣给其他手机厂商做外包项目。**当时承诺待遇还不错,所以就立马入职去上班了。但是后面入职后,发现薪酬待遇这块并不是HR所说那样,那个HR自...

女程序员,为什么比男程序员少???

昨天看到一档综艺节目,讨论了两个话题:(1)中国学生的数学成绩,平均下来看,会比国外好?为什么?(2)男生的数学成绩,平均下来看,会比女生好?为什么?同时,我又联想到了一个技术圈经常讨...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

MySQL数据库面试题(2020最新版)

文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储引擎MyISAM与InnoDB区别MyISAM索引与InnoDB索引的区别?InnoDB引擎的4大特性存储引擎选择索引什么是索引?索引有哪些优缺点?索引使用场景(重点)...

如果你是老板,你会不会踢了这样的员工?

有个好朋友ZS,是技术总监,昨天问我:“有一个老下属,跟了我很多年,做事勤勤恳恳,主动性也很好。但随着公司的发展,他的进步速度,跟不上团队的步伐了,有点...

我入职阿里后,才知道原来简历这么写

私下里,有不少读者问我:“二哥,如何才能写出一份专业的技术简历呢?我总感觉自己写的简历太烂了,所以投了无数份,都石沉大海了。”说实话,我自己好多年没有写过简历了,但我认识的一个同行,他在阿里,给我说了一些他当年写简历的方法论,我感觉太牛逼了,实在是忍不住,就分享了出来,希望能够帮助到你。 01、简历的本质 作为简历的撰写者,你必须要搞清楚一点,简历的本质是什么,它就是为了来销售你的价值主张的。往深...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

优雅的替换if-else语句

场景 日常开发,if-else语句写的不少吧??当逻辑分支非常多的时候,if-else套了一层又一层,虽然业务功能倒是实现了,但是看起来是真的很不优雅,尤其是对于我这种有强迫症的程序"猿",看到这么多if-else,脑袋瓜子就嗡嗡的,总想着解锁新姿势:干掉过多的if-else!!!本文将介绍三板斧手段: 优先判断条件,条件不满足的,逻辑及时中断返回; 采用策略模式+工厂模式; 结合注解,锦...

离职半年了,老东家又发 offer,回不回?

有小伙伴问松哥这个问题,他在上海某公司,在离职了几个月后,前公司的领导联系到他,希望他能够返聘回去,他很纠结要不要回去? 俗话说好马不吃回头草,但是这个小伙伴既然感到纠结了,我觉得至少说明了两个问题:1.曾经的公司还不错;2.现在的日子也不是很如意。否则应该就不会纠结了。 老实说,松哥之前也有过类似的经历,今天就来和小伙伴们聊聊回头草到底吃不吃。 首先一个基本观点,就是离职了也没必要和老东家弄的苦...

为什么你不想学习?只想玩?人是如何一步一步废掉的

不知道是不是只有我这样子,还是你们也有过类似的经历。 上学的时候总有很多光辉历史,学年名列前茅,或者单科目大佬,但是虽然慢慢地长大了,你开始懈怠了,开始废掉了。。。 什么?你说不知道具体的情况是怎么样的? 我来告诉你: 你常常潜意识里或者心理觉得,自己真正的生活或者奋斗还没有开始。总是幻想着自己还拥有大把时间,还有无限的可能,自己还能逆风翻盘,只不是自己还没开始罢了,自己以后肯定会变得特别厉害...

男生更看重女生的身材脸蛋,还是思想?

往往,我们看不进去大段大段的逻辑。深刻的哲理,往往短而精悍,一阵见血。问:产品经理挺漂亮的,有点心动,但不知道合不合得来。男生更看重女生的身材脸蛋,还是...

为什么程序员做外包会被瞧不起?

二哥,有个事想询问下您的意见,您觉得应届生值得去外包吗?公司虽然挺大的,中xx,但待遇感觉挺低,马上要报到,挺纠结的。

当HR压你价,说你只值7K,你该怎么回答?

当HR压你价,说你只值7K时,你可以流畅地回答,记住,是流畅,不能犹豫。 礼貌地说:“7K是吗?了解了。嗯~其实我对贵司的面试官印象很好。只不过,现在我的手头上已经有一份11K的offer。来面试,主要也是自己对贵司挺有兴趣的,所以过来看看……”(未完) 这段话主要是陪HR互诈的同时,从公司兴趣,公司职员印象上,都给予对方正面的肯定,既能提升HR的好感度,又能让谈判气氛融洽,为后面的发挥留足空间。...

面试:第十六章:Java中级开发(16k)

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

面试阿里p7,被按在地上摩擦,鬼知道我经历了什么?

面试阿里p7被问到的问题(当时我只知道第一个):@Conditional是做什么的?@Conditional多个条件是什么逻辑关系?条件判断在什么时候执...

你打算用Java 8一辈子都不打算升级到Java 14,真香

我们程序员应该抱着尝鲜、猎奇的心态,否则就容易固步自封,技术停滞不前。

无代码时代来临,程序员如何保住饭碗?

编程语言层出不穷,从最初的机器语言到如今2500种以上的高级语言,程序员们大呼“学到头秃”。程序员一边面临编程语言不断推陈出新,一边面临由于许多代码已存在,程序员编写新应用程序时存在重复“搬砖”的现象。 无代码/低代码编程应运而生。无代码/低代码是一种创建应用的方法,它可以让开发者使用最少的编码知识来快速开发应用程序。开发者通过图形界面中,可视化建模来组装和配置应用程序。这样一来,开发者直...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

《经典算法案例》01-08:如何使用质数设计扫雷(Minesweeper)游戏

我们都玩过Windows操作系统中的经典游戏扫雷(Minesweeper),如果把质数当作一颗雷,那么,表格中红色的数字哪些是雷(质数)?您能找出多少个呢?文中用列表的方式罗列了10000以内的自然数、质数(素数),6的倍数等,方便大家观察质数的分布规律及特性,以便对算法求解有指导意义。另外,判断质数是初学算法,理解算法重要性的一个非常好的案例。

《Oracle Java SE编程自学与面试指南》最佳学习路线图(2020最新版)

正确选择比瞎努力更重要!

一文带你入门Java Stream流,太强了

两个星期以前,就有读者强烈要求我写一篇 Java Stream 流的文章,我说市面上不是已经有很多了吗,结果你猜他怎么说:“就想看你写的啊!”你看你看,多么苍白的喜欢啊。那就“勉为其难”写一篇吧,嘻嘻。 单从“Stream”这个单词上来看,它似乎和 java.io 包下的 InputStream 和 OutputStream 有些关系。实际上呢,没毛关系。Java 8 新增的 Stream 是为...

立即提问
相关内容推荐