da.phhsnews.com


da.phhsnews.com / Når er det bedre at bruge #! / Bin / bash I stedet for #! / Bin / sh i et Shell Script?

Når er det bedre at bruge #! / Bin / bash I stedet for #! / Bin / sh i et Shell Script?


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

SuperUser-læser Hendre ønsker at vide, hvornår det er bedre at bruge

#! / 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

SuperUser bidragydergravitet har svaret for os:

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


Sådan fjerner du indtastninger fra iOS 'autofuldførelse

Sådan fjerner du indtastninger fra iOS 'autofuldførelse

IOS' autofuldførende færdigheder er en vidunderlig bekvemmelighed, indtil de bliver overstuffed med gamle poster. Er der et gammelt forældet telefonnummer eller en e-mail-adresse, der vises på listen? Fjernelse af dem fra dine kontakter fjerner dem ikke fra listen med autofuldførsler. Du skal gøre det særskilt.

(how-to)

Hvorfor skal du ikke aktivere

Hvorfor skal du ikke aktivere "FIPS-kompatibel" -kryptering på Windows

Windows har en skjult indstilling, der kun aktiverer statscertificeret "FIPS-kompatibel" kryptering. Det kan lyde som en måde at øge din pcs sikkerhed på, men det er det ikke. Du bør ikke aktivere denne indstilling, medmindre du arbejder i regeringen eller har brug for at teste hvordan software vil opføre sig på offentlige pc'er.

(how-to)