
Når du opretter et nyt skal script, vil du lave sikker på at det er så problemfrit som muligt, men nogle gange kan det være lidt forvirrende at vide, hvilken shebang er den bedste til at bruge. På den måde har dagens SuperUser Q & A-post svaret på et forvirret læsers spørgsmål.
Dagens Spørgsmål og Svar session kommer til os med venlig hilsen af SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder. > Spørgsmål
#! / Bin / bash i stedet for #! / Bin / sh i shell scripts: Hvornår er det mere hensigtsmæssigt at bruge
#! / Bin / bash i stedet for #! / Bin / sh i et shell script? Hvornår er det bedre at bruge
#! / bin / bash i stedet for #! / bin / sh i et shell script? Svaret
I kort:
Der er flere skaller, der implementerer en superset af POSIX sh-specifikationen. På forskellige systemer kan
- / bin / sh være et link til aske, bash, dash, ksh, zsh osv. Det vil altid være sh-kompatibelt, dog aldrig csh eller fisk. Så længe som du kun holder fast i sh-funktioner, kan du (og sandsynligvis endda) bruge
- #! / bin / sh og scriptet skal fungere fint, uanset hvilken skal det er. Hvis du begynder at bruge bash-specifikke funktioner (dvs. arrayer), bør du specifikt anmode bash, fordi selvom
- / bin / sh allerede påberåber bash på dit system, er det måske ikke på alles andres system, og dit script vil ikke løbe der . Det samme gælder for zsh og ksh, selvfølgelig. Selvom scriptet kun er til personlig brug, kan du bemærke, at nogle operativsystemer ændrer
- / bin / sh under opgraderinger. For eksempel brugt det på Debian at være bash, men blev senere erstattet med den meget minimale bindestreg. Scripts, der brugte bashisms, men havde pludselig blækket #! / Bin / sh . Men
Selv
- #! / Bin / bash er ikke korrekt. På forskellige systemer kan bash leve i / usr / bin , / usr / pkg / bin eller / usr / local / bin . A mere pålidelig mulighed er
- #! / usr / bin / env bash , som bruger $ PATH . Selvom env-værktøjet i sig selv ikke er strengt garanteret, fungerer / usr / bin / env stadig på flere systemer end / bin / bash gør. Har noget at tilføje til forklaring? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Se hele diskussionsgruppen her.
Billedkredit: Wikipedia
Fjern desktop baggrundsbaggrunde i Windows
Leder du efter en måde at slette skrivebordsbaggrunde fra din Windows-pc? Hvis du nogensinde har ændret tapetet i Windows, har du sikkert bemærket det latterlige antal ubrugelige tapeter, der leveres med systemet som standard. Jeg har aldrig brugt nogen af de indbyggede wallpapers og derfor ønskede at finde ud af en måde at slette dem permanent!Dette er
Hvordan ved Linux, at et nyt kodeord ligner den gamle?
Hvis du nogensinde har modtaget en besked om, at din nye adgangskode er for ligner din gamle, kan du være nysgerrig om, hvordan dit Linux-system 'ved', at de er for meget ens. Dagens SuperUser Q & A-post giver et kig bag 'magisk gardin' til, hvad der foregår for en nysgerrig læser. Dagens Spørgsmål og Svar session kommer til os med venlig hilsen af SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Spørgsmål SuperUser-læser LeNoob ønsker at vide, hvordan et Linux-system ved ", at adgangskoder er for ligner hinanden: I forsøgte at ændre et brugeradgangskode på forskellige Linux-maskiner et par gange, og da den nye adgangskode var meget som den gamle, sagde operativsystemet, at de var for ens.