Questo è il comando cdposix che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici workstation online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS
PROGRAMMA:
NOME
cd — cambia la directory di lavoro
SINOSSI
cd [-L|-P] [elenco]
cd -
DESCRIZIONE
Le cd l'utilità cambierà la directory di lavoro dell'esecuzione della shell corrente
ambiente (vedi Sezione 2.12, Conchiglia Ambiente) eseguendo quanto segue
passaggi in sequenza. (Nei passaggi seguenti, il simbolo curpa rappresenta un intermedio
valore utilizzato per semplificare la descrizione dell'algoritmo utilizzato da cd. Non c'è
requisito che curpa essere reso visibile all'applicazione.)
1. Se no elenco l'operando è dato e il HOME la variabile d'ambiente è vuota o
indefinito, il comportamento predefinito è definito dall'implementazione e non saranno necessari ulteriori passaggi
essere preso.
2. Se no elenco l'operando è dato e il HOME la variabile di ambiente è impostata su un valore non
valore vuoto, il cd l'utilità si comporterà come se la directory denominata nel HOME
la variabile d'ambiente è stata specificata come elenco operando.
3. Se la elenco l'operando inizia con a carattere, set curpa all'operando
e procedere al passaggio 7.
4. Se il primo componente del elenco l'operando è punto o punto-punto, procedere al passaggio 6.
5. Iniziando con il primo percorso nella - nomi di percorso separati di CDPATH (Vedi
ENVIRONMENT VARIABLES (sezione VARIABILI D'AMBIENTE) se il percorso non è nullo, verifica se la concatenazione
di quel percorso, a carattere se quel percorso non terminava con a
carattere, e il elenco l'operando nomina una directory. Se il nome del percorso è null, prova
se la concatenazione di punto, a carattere e l'operando nomina una directory.
In entrambi i casi, se la stringa risultante nomina una directory esistente, set curpa a
quella stringa e procedere al passaggio 7. Altrimenti, ripetere questo passaggio con il percorso successivo
in CDPATH finché tutti i nomi di percorso non sono stati testati.
6. Impostato curpa ai elenco operando.
7. Se la -P l'opzione è attiva, procedere al passaggio 10. Se curpa non inizia con a
carattere, set curpa alla stringa formata dalla concatenazione del valore
of PWD, un carattere se il valore di PWD non è finita con a carattere,
e a curpa.
8. il curpa valore deve poi essere convertito in forma canonica come segue, considerando
ogni componente dall'inizio alla fine, in sequenza:
un. Componenti a punti e qualsiasi personaggi che li separano dal prossimo
componente deve essere cancellato.
B. Per ogni componente punto-punto, se esiste un componente precedente e non è né l'uno né l'altro
radice né punto-punto, quindi:
io. Se il componente precedente non fa riferimento (nel contesto di percorso
risoluzione con collegamenti simbolici seguiti) a una directory, quindi il cd utilità
deve visualizzare un messaggio di errore appropriato e non devono essere eseguiti ulteriori passaggi
prese.
ii. Il componente precedente, tutto caratteri che separano il precedente
componente da punto-punto, punto-punto e tutto caratteri che separano il punto-
punto dal seguente componente (se presente) deve essere cancellato.
C. Un'implementazione può semplificare ulteriormente curpa rimuovendo qualsiasi traccia
personaggi che non sono anche protagonisti caratteri, sostituendo più caratteri non
leader consecutivo personaggi con un singolo e sostituendo tre
o più leader personaggi con un singolo . Se, in conseguenza di ciò
canonicalizzazione, la curpa variabile è null, non devono essere eseguiti ulteriori passaggi.
9. Se curpa è più lungo di {PATH_MAX} byte (incluso il null di terminazione) e il
elenco l'operando non era più lungo di {PATH_MAX} byte (inclusa la terminazione
nullo), allora curpa deve essere convertito da un percorso assoluto a un equivalente
nome di percorso relativo se possibile. Questa conversione è sempre considerata possibile se
il valore di PWD, con un finale aggiunto se non ne ha già uno, è an
sottostringa iniziale di curpa. Indipendentemente dal fatto che sia considerato possibile sotto altro
circostanze non sono specificate. Le implementazioni possono anche applicare questa conversione se
curpa non è più lungo di {PATH_MAX} byte o del elenco l'operando era più lungo di
{PATH_MAX} byte.
10. il cd l'utilità deve quindi eseguire azioni equivalenti a chdir() funzione chiamata
con curpa la sentiero discussione. Se queste azioni falliscono per qualsiasi motivo, il cd
l'utility visualizzerà un messaggio di errore appropriato e il resto di questo passaggio
non deve essere eseguito. Se la -P l'opzione non è attiva, il PWD variabile d'ambiente
deve essere impostato sul valore che curpa aveva all'ingresso al passaggio 9 (cioè, prima della conversione
a un percorso relativo). Se la -P l'opzione è attiva, il PWD variabile d'ambiente
deve essere impostato sulla stringa che verrebbe emessa da pwd -P. Se non è sufficiente
permesso sulla nuova directory, o su qualsiasi genitore di quella directory, per determinare il
directory di lavoro corrente, il valore di PWD la variabile di ambiente non è specificata.
Se, durante l'esecuzione dei passaggi precedenti, il PWD la variabile d'ambiente è impostata, il
VECCHIO PWD anche la variabile d'ambiente deve essere impostata sul valore della vecchia directory di lavoro
(questa è la directory di lavoro corrente immediatamente prima della chiamata a cd).
VERSIONI
Le cd l'utilità deve essere conforme al volume delle definizioni di base di POSIX.1‐2008, Sezione 12.2,
Utilità Sintassi Linee Guida.
Le seguenti opzioni devono essere supportate dall'attuazione:
-L Gestire logicamente l'operando punto-punto; i componenti di collegamento simbolico non devono essere
risolti prima che i componenti punto-punto vengano elaborati (vedere i passaggi 8. e 9. nel
DESCRIZIONE).
-P Gestire fisicamente l'operando punto-punto; i componenti del collegamento simbolico devono essere
risolti prima che i componenti punto-punto vengano elaborati (vedere il passaggio 7. nel
DESCRIZIONE).
Se entrambi -L e a -P opzioni sono specificate, l'ultima di queste opzioni deve essere utilizzata e tutte
altri ignorati. Se nessuno dei due -L né -P è specificato, l'operando deve essere gestito punto-punto
logicamente; vedere la DESCRIZIONE.
OPERANDI
Devono essere supportati i seguenti operandi:
elenco Un percorso assoluto o relativo della directory che diventerà la nuova
directory di lavoro. L'interpretazione di un percorso relativo di cd dipende
, il -L opzione e il CDPATH e a PWD variabili ambientali. Se elenco offre
stringa vuota, i risultati non sono specificati.
− Quando a viene utilizzato come operando, questo deve essere equivalente al comando:
cd "$OLDPWD" && pwd
che passa alla directory di lavoro precedente e poi scrive il suo nome.
STDIN
Non usato.
INGRESSO FILE
Nessuno.
AMBIENTE VARIABILI
Le seguenti variabili d'ambiente influiranno sull'esecuzione di cd:
CDPATH UN -elenco separato di nomi di percorso che fanno riferimento a directory. Il cd utilità
deve utilizzare questo elenco nel tentativo di modificare la directory, come descritto nel
DESCRIZIONE. Una stringa vuota al posto di un percorso di directory rappresenta il
directory corrente. Se CDPATH non è impostato, deve essere trattato come se fosse un
stringa vuota.
HOME Il nome della directory, utilizzato quando no elenco l'operando è specificato.
LUNGO Fornire un valore predefinito per le variabili di internazionalizzazione non impostate o
nullo. (Vedi il volume Definizioni di base di POSIX.1-2008, Sezione 8.2,
Internazionalizzazione Variabili per il primato dell'internazionalizzazione
variabili utilizzate per determinare i valori delle categorie locali.)
LC_TUTTI Se impostato su un valore di stringa non vuoto, sovrascrive i valori di tutti gli altri
variabili di internazionalizzazione.
LC_CTYPE Determinare la localizzazione per l'interpretazione di sequenze di byte di dati di testo
come caratteri (ad esempio, caratteri a byte singolo anziché caratteri multibyte in
argomenti).
LC_MESSAGGI
Determinare la localizzazione che dovrebbe essere usata per influenzare il formato e il contenuto di
messaggi di diagnostica scritti nell'errore standard.
NLSPATH Determinare la posizione dei cataloghi dei messaggi per l'elaborazione di LC_MESSAGGI.
VECCHIO PWD Un percorso della directory di lavoro precedente, usato da cd -.
PWD Questa variabile deve essere impostata come specificato nella DESCRIZIONE. Se un'applicazione
imposta o disattiva il valore di PWD, il comportamento di cd non è specificato.
ASINCRONO EVENTS
Predefinito.
STDOUT
Se un nome di directory non vuoto da CDPATH viene utilizzato, o se cd - è usato, un assoluto
il percorso della nuova directory di lavoro deve essere scritto nello standard output come segue:
"%s\n", <nuovi elenco>
In caso contrario, non ci sarà alcun output.
Stderr
L'errore standard deve essere utilizzato solo per i messaggi di diagnostica.
USCITA FILE
Nessuno.
EXTENDED DESCRIZIONE
Nessuno.
EXIT STATUS
Devono essere restituiti i seguenti valori di uscita:
0 La directory è stata modificata con successo.
>0 Si è verificato un errore.
CONSEGUENZE OF ERRORI
La directory di lavoro resta invariata.
Le i seguenti sezioni sono Informativo.
APPLICAZIONI USO
Dal cd influenza l'ambiente di esecuzione della shell corrente, è sempre fornito come shell
incasso regolare. Se viene chiamato in una subshell o in un ambiente di esecuzione dell'utilità separato,
come uno dei seguenti:
(CD / Tmp)
no cd
Find . − es cd {} \;
non influisce sulla directory di lavoro dell'ambiente del chiamante.
L'utente deve disporre dell'autorizzazione di esecuzione (ricerca) in elenco per cambiarlo.
ESEMPI
Il seguente modello può essere utilizzato per eseguire l'elaborazione nella directory specificata da
località e finiscono nella directory di lavoro corrente in uso prima della prima cd command
è stato rilasciato:
cd località
if [ $? -Ne 0 ]
poi
stampare errore messaggio
exit 1
fi
... do qualunque is desiderato as lungo as , il VECCHIO PWD Industria XNUMX variabile
is non è un modificato
cd -
FONDAMENTO LOGICO
L'uso del CDPATH è stato introdotto nella shell System V. Il suo uso è analogo al
uso del PERCORSO variabile nella shell. La shell BSD C usava un parametro di shell cdpath per
questo scopo.
Un'estensione comune quando HOME non è definito è ottenere la directory di accesso dall'utente
database per l'utente invocante. Questo non si verifica nelle implementazioni di System V.
Alcune shell storiche, come KornShell, eseguivano azioni speciali quando la directory
name conteneva un componente punto-punto, selezionando il genitore logico della directory, piuttosto
rispetto alla directory principale effettiva; cioè, si è spostato su di un livello verso il "/" nel
percorso, ricordando ciò che l'utente ha digitato, piuttosto che eseguire l'equivalente di:
chdir("..");
In una tale shell, i seguenti comandi non produrrebbero necessariamente un output equivalente
per tutte le directory:
cd .. && ls ls ..
Questo comportamento è ora l'impostazione predefinita. Non è coerente con la definizione di punto-punto in
pratica più storica; cioè, mentre questo comportamento è stato opzionalmente disponibile in
la KornShell, altre shell storicamente non hanno supportato questa funzionalità. Il
il percorso logico è memorizzato nel PWD variabile d'ambiente quando il cd utilità completata
e questo valore viene utilizzato per costruire il nome della directory successiva se cd viene invocato con il -L
opzione.
FUTURE INDICAZIONI
Nessuno.
Usa cdposix online utilizzando i servizi onworks.net