Når du lager et nytt skalleskript, vil du lage sikker på at det er så problemfritt som mulig, men noen ganger kan det være litt forvirrende å vite hvilken shebang er den beste for deg å bruke. På dette notatet har dagens SuperUser Q & A-post svaret på et forvirret lesers spørsmål.
Dagens spørsmål og svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppe av Q & A-nettsteder.
SuperUser-leseren Hendre vil vite når det er bedre å bruke #! / Bin / bash i stedet for #! / Bin / sh i shell-skript:
Når er det mer hensiktsmessig å bruke #! / Bin / bash i stedet for #! / Bin / sh i et skalskript?
Når er det bedre å bruke #! / bin / bash i stedet for #! / bin / sh i et shell-skript?
SuperUser-bidragsgravitasjonen har svaret for oss:
I kort:
- Det finnes flere skall som implementerer en superset av POSIX sh-spesifikasjonen. På forskjellige systemer, kan / bin / sh være en lenke til aske, bash, dash, ksh, zsh, etc. Det vil alltid være kompatibelt, men aldri csh eller fisk.
- Så lenge Som du holder fast i sh-funksjoner, kan du (og sannsynligvis også) bruke #! / bin / sh og skriptet skal fungere bra, uansett hvilket skall det er.
- Hvis du begynner å bruke bash-spesifikke funksjoner (dvs. arrayer), bør du spesielt be om bash fordi, selv om / bin / sh allerede påberoper bash på systemet ditt, er det kanskje ikke på alle andres system, og skriptet ditt vil ikke løpe der . Det samme gjelder for zsh og ksh, selvfølgelig.
- Selv om skriptet kun er til personlig bruk, kan det hende du merker at enkelte operativsystemer endrer / bin / sh under oppgraderinger. For eksempel var det på Debian det å være bash, men ble senere erstattet med den svært små dash. Skript som brukte bashisms, men hadde #! / Bin / sh plutselig brutt.
Men:
- Selv #! / Bin / bash er ikke så riktig. På forskjellige systemer kan bash leve i / usr / bin , / usr / pkg / bin eller / usr / local / bin .
- A mer pålitelig alternativ er #! / usr / bin / env bash , som bruker $ PATH . Selv om env-verktøyet selv ikke er strengt garantert, fungerer / usr / bin / env fortsatt på flere systemer enn / bin / bash gjør.
Har noe å legge til i forklaring? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Se full diskusjonstråd her.
Bildekreditt: Wikipedia
Slik deaktiverer du dialogboksen Slett bekreftelse i Outlook
Hvis du sletter mange e-postmeldinger når du siver gjennom Outlook-innboksen, kan du ha slått på alternativet for å automatisk tømme mappen slettede elementer når du forlater Outlook. Det er praktisk, men du må sannsynligvis bekrefte slettingen av e-postene hver gang. Enten du manuelt sender mange e-poster til papirkurven, eller du har satt opp regler for å omdirigere e-postmeldinger du vet at du ikke vil , den irriterende bekreftelsesdialogboksen vises uansett.
Bruk forhåndsvisningsprogrammet til Mac til å slå sammen, splitt, merk og skriv PDF-filer
Forhåndsvisningsprogrammet som følger med Mac OS X, er mye kraftigere enn det ydmyke navnet tilsier. I tillegg til å bare se på PDF-filer, inneholder den de grunnleggende PDF-funksjonene en gjennomsnittlig bruker kanskje trenger. Dette er typen ting som vil kreve ubehagelig freeware på Windows. Selv den tunge Adobe Reader PDF-programvaren inneholder ikke mange av disse redigeringsfunksjonene fordi Adobe heller vil presse sitt betalte Adobe Acrobat-produkt.