Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 29/01/2024, à 15:06

Astrolivier

[Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

salut,

je n'arrive pas à trouver comment mettre cette longue ligne de commande sur plusieurs lignes dans l'éditeur, s'il vous plaît.
il paraît que faut pas plus de 80 caractères par ligne.

la ligne

lsmod | grep -E 'adm8211|airo|ar5523|at76c50x-usb|ath5k|ath6kl|ath9k|ath9k_htc|ath10k|ath11k|ath12k|atmel|b43|b43legacy|brcmfmac|brcmsmac|carl9170|cw1200|hostap|ipw2100|ipw2200|iwlegacy|iwlwifi|libertas|libertas_tf|mac80211_hwsim|mt76|mt7601u|mwifiex|mwl8k|orinoco|p54pci|p54spi|p54usb|prism2_usb|qtnfmac|r8192e_pci|r8192u_usb|r8712u|ray_cs|rndis_wlan|rt61pci|rt73usb|rt2400pci|rt2500pci|rt2500usb|rt2800pci|rt2800usb|rtl8.*|rtl8180|rtl8187|rtl8188ee|rtl8192ce|rtl8192cu|rtl8192de|rtl8192se|rtl8723ae|rtl8723bs|r8723au|vt6655|vt6656|wcn36xx|wfx|wil6210|winbond|wilc|wl1251|wl12xx|wl18xx|wl3501_cs|wlags49_h2|zd1201|zd1211rw'

l'erreur quand je mets à la ligne avec des backslash

$ ./test.sh 
#######   lsmod | grep -E '<modules>'   #######

Module                  Size  Used by
grep: Barre oblique inverse en suffixe
grep: Barre oblique inverse en suffixe
grep: Barre oblique inverse en suffixe
grep: Barre oblique inverse en suffixe

le script avec les backslashs

echo -e "\n\n#######   lsmod | grep -E '<modules>'   #######\n"
  echo "Module                  Size  Used by"
  lsmod | grep -E 'adm8211|airo|ar5523|at76c50x-usb|ath5k|ath6kl|ath9k|ath9k_htc|ath10k|ath11k|ath12k|atmel|b43|b43legacy|   \
  brcmfmac|brcmsmac|carl9170|cw1200|hostap|ipw2100|ipw2200|iwlegacy|iwlwifi|libertas|libertas_tf|mac80211_hwsim|mt76|        \
  mt7601u|mwifiex|mwl8k|orinoco|p54pci|p54spi|p54usb|prism2_usb|qtnfmac|r8192e_pci|r8192u_usb|r8712u|ray_cs|rndis_wlan|      \
  rt61pci|rt73usb|rt2400pci|rt2500pci|rt2500usb|rt2800pci|rt2800usb|rtl8.*|rtl8180|rtl8187|rtl8188ee|rtl8192ce|rtl8192cu|    \
  rtl8192de|rtl8192se|rtl8723ae|rtl8723bs|r8723au|vt6655|vt6656|wcn36xx|wfx|wil6210|winbond|wilc|wl1251|wl12xx|              \
  wl18xx|wl3501_cs|wlags49_h2|zd1201|zd1211rw'
    



tant que j'y suis, j'ai glissé un " |rtl8.*| "
je n'ai pas d'erreur, mais c'est ok ou pas ? (le but est d'avoir tous les modules qui commencent par "rtl8" )

Dernière modification par Astrolivier (Le 29/01/2024, à 18:19)


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#2 Le 29/01/2024, à 15:12

sputnick

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

Salut.

C'est pas parce que les best practices recommandent de laisser 80 caractères qu'il faut forcement respecter cela dans ce genre de cas.


Personne ne va te blâmer pour le dépassement, il n'y a pas encore de FDO pour contrôler la taille des lignes ^^

Surtout si c'est un projet perso.


On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

#3 Le 29/01/2024, à 15:14

sputnick

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

Quoiqu'il en soit, si tu y tiens vraiment:

echo -e "\n\n#######   lsmod | grep -E '<modules>'   #######\n"
echo "Module                  Size  Used by"
regex='adm8211|airo|ar5523|at76c50x-usb|ath5k|ath6kl|ath9k|ath9k_htc|ath10k|ath11k|ath12k|atmel|b43|b43legacy|'
regex+='brcmfmac|brcmsmac|carl9170|cw1200|hostap|ipw2100|ipw2200|iwlegacy|iwlwifi|libertas|libertas_tf|mac80211_hwsim|mt76|'
regex+='mt7601u|mwifiex|mwl8k|orinoco|p54pci|p54spi|p54usb|prism2_usb|qtnfmac|r8192e_pci|r8192u_usb|r8712u|ray_cs|rndis_wlan|'
regex+='rt61pci|rt73usb|rt2400pci|rt2500pci|rt2500usb|rt2800pci|rt2800usb|rtl8.*|rtl8180|rtl8187|rtl8188ee|rtl8192ce|rtl8192cu|'
regex+='rtl8192de|rtl8192se|rtl8723ae|rtl8723bs|r8723au|vt6655|vt6656|wcn36xx|wfx|wil6210|winbond|wilc|wl1251|wl12xx|'
regex+='wl18xx|wl3501_cs|wlags49_h2|zd1201|zd1211rw'
lsmod | grep -E "$regex"

Dernière modification par sputnick (Le 29/01/2024, à 15:14)


On ne peut pas mettre d'array dans un string!
https://sputnick.fr/

Hors ligne

#4 Le 29/01/2024, à 15:43

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

merci beaucoup,

il y a un côté "comment on fait" qui me turlupinait, et pour la présentation ça a un côté sympa


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#5 Le 29/01/2024, à 18:23

Watael

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

$ declare -a mollusques
$ mollusques=(
    ga
    bu
    zo
    meuh
)
$ plateau2fruits2mer=$(IFS='|'; echo "${mollusques[*]}")
$ echo "$plateau2fruits2mer"
ga|bu|zo|meuh
$

Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#6 Le 29/01/2024, à 18:37

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

haha, j'ai mis un moment pour comprendre.
par contre là j'ai > 50 lignes pour déclarer ma variable.

merci


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#7 Le 29/01/2024, à 18:40

Watael

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

mollusques=( ga bu ...
zo meuh ...
... )

il n'y a pas moyen d'obtenir cette liste de modules à partir d'une commande, ou au moins le plus gros de la liste ?

Dernière modification par Watael (Le 29/01/2024, à 18:41)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#8 Le 29/01/2024, à 20:05

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

pas que je sache, ça vient de là
https://wireless.wiki.kernel.org/en/users/drivers


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#9 Le 29/01/2024, à 20:36

Watael

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

c'est peut-être la méthode qui n'est pas bonne...

quel est le but de la manœuvre ?


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#10 Le 29/01/2024, à 21:17

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

dans le wificheck de base il y a un lsmod | sort, mais c'est pas évident de trouver (pour moi en tout cas) quels sont les modules en rapport avec le wifi. donc j'ai fait une sélection de tous les modules wif, comme ça j'ai les modules wifi

en fait sur le lsmod sort de mon ordi, je ne trouvais quels étaient les modules wifi, là j'ai

#######   lsmod | grep -E '<modules>'   #######

Module                  Size  Used by
ath10k_pci             49152  0
ath10k_core           602112  1 ath10k_pci
ath                    36864  1 ath10k_core
mac80211             1249280  1 ath10k_core
cfg80211              974848  3 ath,mac80211,ath10k_core

j'en ai aussi là

####### lspci -k -nn | grep -A 3 -i net  ######

02:00.0 Network controller [0280]: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter [168c:0042] (rev 31)
	Subsystem: Dell QCA9377 802.11ac Wireless Network Adapter [1028:1810]
	Kernel driver in use: ath10k_pci
	Kernel modules: ath10k_pci
03:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL810xE PCI Express Fast Ethernet controller [10ec:8136] (rev 07)
	Subsystem: Dell RTL810xE PCI Express Fast Ethernet controller [1028:0a10]
	Kernel driver in use: r8169
	Kernel modules: r8169

mais le lsmod grep -E me donne plus de modules ça m'aide à comprendre/chercher

à comparer avec

$ lsmod |sort
ac97_bus               16384  1 snd_soc_core
acpi_thermal_rel       16384  1 int3400_thermal
aesni_intel           376832  5
af_alg                 32768  6 algif_hash,algif_skcipher
ahci                   45056  0
algif_hash             16384  1
algif_skcipher         16384  1
ath10k_core           602112  1 ath10k_pci
ath10k_pci             49152  0
ath                    36864  1 ath10k_core
autofs4                49152  2
binfmt_misc            24576  1
blake2b_generic        20480  0
bluetooth             704512  43 btrtl,btintel,btbcm,bnep,btusb,rfcomm
bnep                   28672  2
btbcm                  24576  1 btusb
btintel                40960  1 btusb
btrfs                1560576  0
btrtl                  24576  1 btusb
btusb                  61440  0
ccm                    20480  3
cec                    61440  2 drm_kms_helper,i915
cfg80211              974848  3 ath,mac80211,ath10k_core
cmac                   16384  2
coretemp               24576  0
cpuid                  16384  0
crc32_pclmul           16384  0
crct10dif_pclmul       16384  1
cryptd                 24576  3 crypto_simd,ghash_clmulni_intel
crypto_simd            16384  1 aesni_intel
dcdbas                 20480  1 dell_smbios
dell_laptop            32768  0
dell_smbios            28672  2 dell_wmi,dell_laptop
dell_smm_hwmon         24576  0
dell_wmi               24576  1 dell_laptop
dell_wmi_descriptor    20480  2 dell_wmi,dell_smbios
drm                   622592  21 drm_kms_helper,i915,ttm
drm_kms_helper        311296  1 i915
ecc                    36864  1 ecdh_generic
ecdh_generic           16384  1 bluetooth
ee1004                 20480  0
efi_pstore             16384  0
fb_sys_fops            16384  1 drm_kms_helper
ghash_clmulni_intel    16384  0
hfs                    65536  0
hfsplus               118784  0
hid                   151552  3 i2c_hid,hid_multitouch,hid_generic
hid_generic            16384  0
hid_multitouch         32768  0
i2c_algo_bit           16384  1 i915
i2c_hid                36864  1 i2c_hid_acpi
i2c_hid_acpi           16384  0
i2c_i801               36864  0
i2c_smbus              20480  1 i2c_i801
i915                 3117056  46
idma64                 20480  0
input_leds             16384  0
int3400_thermal        20480  0
int3403_thermal        20480  0
int340x_thermal_zone    20480  2 int3403_thermal,processor_thermal_device
intel_cstate           20480  0
intel_hid              24576  0
intel_lpss             16384  1 intel_lpss_pci
intel_lpss_pci         24576  0
intel_pmc_bxt          16384  0
intel_powerclamp       24576  0
intel_punit_ipc        16384  1 intel_telemetry_pltdrv
intel_rapl_common      40960  2 intel_rapl_msr,processor_thermal_rapl
intel_rapl_msr         20480  0
intel_soc_dts_iosf     20480  1 processor_thermal_device_pci_legacy
intel_telemetry_core    20480  1 intel_telemetry_pltdrv
intel_telemetry_pltdrv    20480  0
ip6_udp_tunnel         16384  1 sctp
ip_tables              32768  0
jfs                   233472  0
joydev                 32768  0
kvm                  1032192  1 kvm_intel
kvm_intel             368640  0
ledtrig_audio          16384  5 snd_ctl_led,snd_hda_codec_generic,dell_wmi,snd_sof,dell_laptop
libahci                45056  1 ahci
libarc4                16384  1 mac80211
libcrc32c              16384  4 btrfs,nf_tables,xfs,sctp
lp                     28672  0
mac80211             1249280  1 ath10k_core
mac_hid                16384  0
mc                     65536  4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
mei                   135168  3 mei_hdcp,mei_me
mei_hdcp               24576  0
mei_me                 40960  1
minix                  49152  0
Module                  Size  Used by
msdos                  20480  0
msr                    16384  0
nfnetlink              20480  1 nf_tables
nf_tables             262144  0
nls_iso8859_1          16384  1
ntfs                  122880  0
ntfs3                 274432  0
nvme                   49152  6
nvme_core             135168  10 nvme,nvme_fabrics
nvme_fabrics           24576  0
parport                69632  3 parport_pc,lp,ppdev
parport_pc             49152  0
pinctrl_geminilake     24576  0
ppdev                  24576  0
processor_thermal_device    20480  1 processor_thermal_device_pci_legacy
processor_thermal_device_pci_legacy    16384  0
processor_thermal_mbox    16384  2 processor_thermal_rfim,processor_thermal_device
processor_thermal_rapl    20480  1 processor_thermal_device
processor_thermal_rfim    24576  1 processor_thermal_device
psmouse               176128  0
qnx4                   16384  0
r8169                 102400  0
raid6_pq              122880  1 btrfs
rapl                   20480  0
rc_core                65536  1 cec
realtek                32768  1
rfcomm                 81920  16
sch_fq_codel           20480  2
sctp                  393216  56
serio_raw              20480  0
snd                   106496  20 snd_ctl_led,snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_compress,snd_soc_core,snd_pcm,snd_rawmidi
snd_compress           24576  1 snd_soc_core
snd_ctl_led            24576  0
snd_hda_codec         163840  5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek,snd_soc_hdac_hda
snd_hda_codec_generic   102400  1 snd_hda_codec_realtek
snd_hda_codec_hdmi     77824  1
snd_hda_codec_realtek   159744  1
snd_hda_core          110592  10 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_hda_ext_core       32768  4 snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_hda_intel          53248  3
snd_hwdep              16384  1 snd_hda_codec
snd_intel_dspcfg       28672  3 snd_hda_intel,snd_sof_intel_hda_common,snd_soc_skl
snd_intel_sdw_acpi     20480  2 snd_sof_intel_hda_common,snd_intel_dspcfg
snd_pcm               143360  11 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_compress,snd_soc_core,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
snd_pcm_dmaengine      16384  1 snd_soc_core
snd_rawmidi            49152  1 snd_seq_midi
snd_seq                77824  2 snd_seq_midi,snd_seq_midi_event
snd_seq_device         16384  3 snd_seq,snd_seq_midi,snd_rawmidi
snd_seq_midi           20480  0
snd_seq_midi_event     16384  1 snd_seq_midi
snd_soc_acpi           16384  3 snd_soc_acpi_intel_match,snd_sof_intel_hda_common,snd_soc_skl
snd_soc_acpi_intel_match    61440  3 snd_sof_intel_hda_common,snd_soc_skl,snd_sof_pci_intel_apl
snd_soc_core          348160  5 soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hda,snd_soc_skl
snd_soc_hdac_hda       24576  2 snd_sof_intel_hda_common,snd_soc_skl
snd_soc_skl           172032  0
snd_soc_sst_dsp        36864  1 snd_soc_skl
snd_soc_sst_ipc        20480  1 snd_soc_skl
snd_sof               147456  2 snd_sof_pci,snd_sof_intel_hda_common
snd_sof_intel_hda      20480  1 snd_sof_intel_hda_common
snd_sof_intel_hda_common   102400  1 snd_sof_pci_intel_apl
snd_sof_pci            20480  2 snd_sof_intel_hda_common,snd_sof_pci_intel_apl
snd_sof_pci_intel_apl    16384  0
snd_sof_xtensa_dsp     16384  1 snd_sof_intel_hda_common
snd_timer              40960  2 snd_seq,snd_pcm
soundcore              16384  2 snd_ctl_led,snd
soundwire_bus          94208  3 soundwire_intel,soundwire_generic_allocation,soundwire_cadence
soundwire_cadence      36864  1 soundwire_intel
soundwire_generic_allocation    16384  1 soundwire_intel
soundwire_intel        45056  1 snd_sof_intel_hda_common
sparse_keymap          16384  2 intel_hid,dell_wmi
syscopyarea            16384  1 drm_kms_helper
sysfillrect            20480  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
tls                   114688  0
ttm                    86016  1 i915
udp_tunnel             20480  1 sctp
ufs                   106496  0
uvcvideo              106496  0
video                  65536  3 dell_wmi,dell_laptop,i915
videobuf2_common       77824  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videobuf2_memops       20480  1 videobuf2_vmalloc
videobuf2_v4l2         32768  1 uvcvideo
videobuf2_vmalloc      20480  1 uvcvideo
videodev              258048  3 videobuf2_v4l2,uvcvideo,videobuf2_common
wmi                    32768  4 dell_wmi,wmi_bmof,dell_smbios,dell_wmi_descriptor
wmi_bmof               16384  0
x86_pkg_temp_thermal    20480  0
xfs                  1769472  0
xhci_pci               24576  0
xhci_pci_renesas       20480  1 xhci_pci
xor                    24576  1 btrfs
x_tables               53248  1 ip_tables
zstd_compress         229376  1 btrfs

où quand on ne sait pas ce qu'on cherche, c'est pas évident


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#11 Le 29/01/2024, à 21:36

Watael

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

soit, mais ça doit servir à quoi ?


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#12 Le 29/01/2024, à 21:59

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

aux aidant du forum à trouver d'où vient le fait qu'un forumeur n'ai pas de wifi ou trop lent ou toute autre question.

souvent il y a des soucis de modules, soit on change le module (quite a en recompiler un) soit on change une variable dans le fichier conf.

edit : ça sert à faire des recherches sur un moteur de recherche

Dernière modification par Astrolivier (Le 29/01/2024, à 22:04)


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne

#13 Le 29/01/2024, à 22:32

Watael

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

je ne parle pas du script, je parle de la commande. quelle est sa finalité ?

et les unsupported modules, s'ils ne sont pas supportés par le noyau, tu penses les trouver dans la liste des modules du noyau ?

Dernière modification par Watael (Le 29/01/2024, à 22:35)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne

#14 Le 29/01/2024, à 23:03

Astrolivier

Re : [Résolu]Mettre ligne de commande sur plusieurs lignes (grep -E)

finalité de la commande : lister uniquement les modules wifi.


les unsupported, je les ai mis pour être sûr qu'il n'y en a pas d'installés. si on en voit un : gros red flag.
un peu comme /etc/network/interfaces : si présent : gros red flag

dans les deux cas ça voudrait dire trifouillage bizarre.

pour les unsupported, je ne pense jamais en voir, mais bon, sait-on jamais. et ce n'est qu'une ligne. unsupported ne veut pas dire qu'on ne peut pas les installer, mais que c'est pas une bonne idée pour différentes raisons, j'y ai inclus les obsolètes.


S'il faut absolument faire des sacrifices pour assurer le progrès de l'humanité, ne serait-il pas indispensable de s'en tenir au principe selon lequel c'est à ceux dont on exige le sacrifice que la décision doit revenir en dernier ressort ? (howard zinn)

Hors ligne