OVH Cloud OVH Cloud

[sed et AppleScript] questions de debutant

3 réponses
Avatar
julien.gautier
Bonjour,


je suis assez newbie en matière de shell, et vous prie de m'en excuser :
j'ai 2 livres sur Unix et ai parcouru le web, mais ne trouve pas de
réponse concluante à la question suivante.

J'ai un fichier produit par une commande Curl, qui liste un répertoire
via ftp; le fichier contient qq chose du genre :

dossier1
dossier2
dossier3

(avec ce qui semble donc un retour chariot entre chaque nom (?))

Ce que je voudrais : pouvoir remplir une liste AppleScript contenant
chaque nom de dossier (mais le nom seulement).

Si j'affecte simplement le résultat de la commande Curl à une variable
AS, je n'obtiens pas, semble-t-il, une liste, à cause, me semble-t-il
des retours chariot retournés par Curl.

Comment faire ?

- j'ai pensé à sed, pour chercher/remplacer les retours chariot par de
tabulations ou autre... mais je ne parviens pas à identifier le retour
chariot en question... Comment se note-t-il ?

- peut-être y a-t-il une solution en AS ? du genre, faire comprendre à
AS que les retour chariot doivent fonctionner comme des séparateurs de
litse... mais je ne sais pas comment faire cela .


Qu'en pensez-vous ?

Merci de votre aide.

set vList to do shell script

3 réponses

Avatar
Schmurtz
J'ai un fichier produit par une commande Curl, qui liste un répertoire
via ftp; le fichier contient qq chose du genre :

dossier1
dossier2
dossier3

(avec ce qui semble donc un retour chariot entre chaque nom (?))

- peut-être y a-t-il une solution en AS ? du genre, faire comprendre à
AS que les retour chariot doivent fonctionner comme des séparateurs de
liste... mais je ne sais pas comment faire cela .


set applescript's text item delimiters to return

--
Schmurtz

Avatar
julien.gautier
Schmurtz wrote:

J'ai un fichier produit par une commande Curl, qui liste un répertoire
via ftp; le fichier contient qq chose du genre :

dossier1
dossier2
dossier3

(avec ce qui semble donc un retour chariot entre chaque nom (?))

- peut-être y a-t-il une solution en AS ? du genre, faire comprendre à
AS que les retour chariot doivent fonctionner comme des séparateurs de
liste... mais je ne sais pas comment faire cela .


set applescript's text item delimiters to return



Bien sûr.

Merci bcp !


Avatar
Nicolas.MICHEL
Julien Gautier wrote:

- j'ai pensé à sed, pour chercher/remplacer les retours chariot par de
tabulations ou autre... mais je ne parviens pas à identifier le retour
chariot en question... Comment se note-t-il ?


Sed travaille ligne par ligne.
Le retour de chariot n'est donc pas facile à manipuler.
Il y a toutes fois une option qui permet de traiter 2 lignes à la fois,
mais j'en ai des mauvais souvenirs. Je sais même plus quelle est cette
option et si j'avais pas dû utiliser un autre sed que celui fournit de
base. tr ou un awk n'ont pas cette limitation.

tr 'n' "t" <fichier_source >fichier_dest


--
Je m'appelles Billy et je suis Funky